Sdílet prostřednictvím


Compilerfehler CS0314

Aktualisiert: November 2007

Fehlermeldung

Der Typ "Typ1" kann in dem/r generischen Typ oder Methode "Name" nicht als Typparameter "Name" verwendet werden. Es gibt keine Boxing-Konvertierung oder Typparameterkonvertierung von "Typ1" in "Typ2".
The type 'type1' cannot be used as type parameter 'name' in the generic type or method 'name'. There is no boxing conversion or type parameter conversion from 'type1' to 'type2'.

Wenn ein generischer Typ einen Typparameter mit Einschränkung verwendet, muss die neue Klasse diese Einschränkung ebenfalls beachten.

So beheben Sie diesen Fehler

  • Im folgenden Beispiel wird where T : ClassConstraint zur Klasse B hinzugefügt.

Beispiel

Der folgende Code führt zu Fehler CS0314:

// cs0314.cs
// Compile with: /target:library
public class ClassConstraint { }

public class A<T> where T : ClassConstraint
{ }

public class B<T> : A<T> //CS0314
{ }

// Try using this instead.
public class C<T> : A<T> where T : ClassConstraint
{ }

Siehe auch

Referenz

Einschränkungen für Typparameter (C#-Programmierhandbuch)