Die Datentypen der Typparameter in der in '<Typname>' definierten Erweiterungsmethode '<Methodenname>' können nicht von diesen Argumenten abgeleitet werden
Aktualisiert: November 2007
Fehlermeldung
Die Datentypen der Typparameter in der in '<Typname>' definierten Erweiterungsmethode '<Methodenname>' können nicht von diesen Argumenten abgeleitet 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. 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 kann jedoch keinen Datentyp für den Typparameter in dieser Methode finden und meldet diesen Fehler.
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.
Module Module1
Sub Main()
Dim classInstance As ClassExample
'' Not valid.
'classInstance.GenericExtensionMethod("Hello", "World")
End Sub
<System.Runtime.CompilerServices.Extension()> _
Sub GenericExtensionMethod(Of T)(ByVal classEx As ClassExample, _
ByVal x As String, ByVal y As _
InterfaceExample(Of T))
End Sub
End Module
Interface InterfaceExample(Of T)
End Interface
Class ClassExample
End Class
Fehler-ID: BC36649 und BC36646
So beheben Sie diesen Fehler
- Möglicherweise können Sie einen Datentyp für die Typparameter angeben, anstatt sich auf den Typrückschluss zu verlassen.
Siehe auch
Konzepte
Gelockerte Delegatenkonvertierung
Erweiterungsmethoden (Visual Basic)
Generische Prozeduren in Visual Basic