Jenis data parameter tipe dalam metode '<methodname>' tidak dapat disimpulkan dari argumen ini karena tidak dikonversi ke dalam jenis yang sama

Jenis data dari parameter jenis dalam metode '<methodname>' tidak dapat disimpulkan dari argumen ini karena tidak dikonversi ke dalam jenis yang sama. Menentukan jenis data secara eksplisit dapat memperbaiki kesalahan ini.

Upaya telah dilakukan untuk menggunakan inferensi jenis untuk menentukan jenis data atau jenis dari parameter jenis atau parameter-parameter saat mengevaluasi panggilan ke prosedur generik. Compiler tidak dapat menemukan jenis data yang memenuhi batasan semua argumen. Oleh karena itu, ia melaporkan kesalahan ini.

Catatan

Saat menentukan argumen bukanlah opsi (misalnya, untuk operator kueri dalam ekspresi kueri), pesan kesalahan muncul tanpa kalimat kedua.

Kode berikut menunjukkan kesalahan yang sama.

Option Strict Off
Module Module1
    Sub Main()

        '' Not valid. Integer and Date do not convert to the same type.
        'targetMethod(19, #3/4/2007#)

    End Sub

    Sub targetMethod(Of T)(ByVal p1 As T, ByVal p2 As T)
    End Sub

End Module

ID Kesalahan: BC36660 dan BC36657

Untuk memperbaiki kesalahan ini

  • Anda mungkin dapat mengonversi salah satu argumen atau lebih secara eksplisit ke dalam jenis yang kompatibel, seperti yang ditunjukkan dalam kode berikut:

    targetMethod(19, #3/4/2007#.ToOADate)
    
  • Anda mungkin dapat menentukan jenis data untuk parameter jenis atau parameter-parameter yang menjadi tujuan konversi argumen, seperti yang ditunjukkan dalam kode berikut:

    targetMethod(Of String)(19, #3/4/2007#)
    

Lihat juga