Partilhar via


(s) tipo de dados não do tipo de parâmetros no método de extensão '<methodname>' definidos em 'typename' pode ser deduzidos a partir desses argumentos porque eles não são convertidos para o mesmo tipo

Mensagem de erro

(s) tipo de dados não do tipo de parâmetros no método de extensão '<methodname>' definidos em 'typename' pode ser deduzidos a partir desses argumentos porque eles não são convertidos para o mesmo tipo.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 de dados (ou tipos) de parâmetro de tipo (ou parâmetros) ao avaliar uma telefonar para um método de extensão genérica.O compilador não foi possível encontrar um tipo de dados que satisfaça as restrições de todos os argumentos.Portanto, ele relatado que 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 Module3
    Sub Main()

        Dim c1 As New Class1

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

    End Sub

    <System.Runtime.CompilerServices.Extension()> _
    Sub targetMethod(Of T)(ByVal p0 As Class1, ByVal p1 As T, ByVal p2 As T)
    End Sub

    Class Class1
    End Class

End Module

ID de erro: BC36661 e BC36658

Para corrigir este erro

  • Você poderá converter um ou mais argumentos explicitamente em um tipo compatível, sistema autônomo mostra o código a seguir:

    c1.targetMethod(19, #3/4/2007#.ToOADate)
    
  • Você poderá especificar um tipo de dados para o parâmetro de tipo ou parâmetros para a qual converter sistema autônomo argumentos, sistema autônomo mostrado no código a seguir:

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

Consulte também

Conceitos

Métodos de extensão (Visual Basic)

Conversão de delegado reduzida

Procedimentos Genéricos em Visual Basic

Conversões explícita e implícita 

Referência

Funções de conversão de tipo 

Outros recursos

Conversões de Tipo no Visual Basic