Partilhar via


Dados dos parâmetros de tipo no método '<methodname>' não não possível inferir os tipos de com estes argumentos porque há mais de um tipo possível base

Mensagem de erro

Dados dos parâmetros de tipo no método '<methodname>' não não possível inferir os tipos com desses argumentos porque há mais de um tipo possível.Especificando os dados tipos explicitamente podem corrigir esse erro.

Foi feita uma tentativa de usar inferência de tipos de tipos para determinar o tipo ou tipos de parâmetro de tipo ou parâmetros em uma telefonar para um procedimento genérico.O compilador encontra mais de um tipo de dados possíveis para um ou mais dos parâmetros de tipo e relata esse erro.

Observação:

Quando especificar argumentos não é uma opção (por exemplo, para operadores de consulta em expressões de consulta), a mensagem de erro aparece sem a segunda sentença.

O código a seguir demonstra o erro.

Option Strict Off
Module Module1
    Sub Main()
        '' Not valid.
        'targetMethod(1, "2")
    End Sub

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

End Module

ID de erro: BC36654 (dentro de LINQ consultas) e BC36651 (fora consultas)

Para corrigir este erro

  • Se o erro é exibido fora de uma consulta, tente especificar explicitamente o tipo de dados do parâmetro de tipo:

    targetMethod(Of Integer)(1, "2")
    

Consulte também

Conceitos

Procedimentos Genéricos em Visual Basic

Referência

Opção declaração estrito