Die Datentypen der Typparameter in der in 'Typname' definierten Erweiterungsmethode '<Methodenname>' können nicht von diesen Argumenten abgeleitet werden, da sie nicht in denselben Typ konvertiert werden
Aktualisiert: November 2007
Fehlermeldung
Die Datentypen der Typparameter in der in 'Typname' definierten Erweiterungsmethode '<Methodenname>' können nicht von diesen Argumenten abgeleitet werden, da sie nicht in denselben Typ konvertiert werden. Sie können diesen Fehler möglicherweise beheben, indem Sie die Datentypen explizit angeben.
Data type(s) of the type parameter(s) in extension method '<methodname>' defined in 'typename' cannot be inferred from these arguments because they do not convert to the same type. Specifying the data type(s) explicitly might correct this error.
Es wurde versucht, bei der Auswertung eines Aufrufs an eine generische Erweiterungsmethode mithilfe von Typrückschluss die Datentypen der Typparameter zu bestimmen. Der Compiler konnte keinen Datentyp finden, der den Einschränkungen aller Argumente entsprach. Aus diesem Grund wurde dieser Fehler angezeigt.
Hinweis: |
---|
Wenn Argumente nicht angegeben werden können (z. B. von Abfrageoperatoren in Abfrageausdrücken), wird der zweite Satz der Fehlermeldung nicht angezeigt. |
Der folgende Code veranschaulicht den Fehler.
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
Fehler-ID: BC36661 und BC36658
So beheben Sie diesen Fehler
Möglicherweise können Sie mindestens ein Argument explizit in einen kompatiblen Typ konvertieren, wie in folgendem Code dargestellt:
c1.targetMethod(19, #3/4/2007#.ToOADate)
Möglicherweise können Sie für die Typparameter, in die die Argumente konvertiert werden, einen Datentyp angeben, wie in folgendem Code dargestellt:
c1.targetMethod(Of String)(19, #3/4/2007#)
Siehe auch
Konzepte
Erweiterungsmethoden (Visual Basic)
Gelockerte Delegatenkonvertierung
Generische Prozeduren in Visual Basic
Implizite und explizite Konvertierungen
Referenz
Funktionen für die Typkonvertierung