Die Schnittstelle „<interfacename1>“ kann nicht geerbt werden, da die Schnittstelle „<interfacename2>“, von der geerbt wird, möglicherweise mit der Schnittstelle „<interfacename3>“ identisch ist, von der die Schnittstelle „<interfacename4>“ bei manchen Typargumenten erbt.

Eine generische Schnittstelle erbt von mindestens zwei generischen Schnittstellen, und zwei der Vererbungen können einen Konflikt mit bestimmten Werten von Typargumenten verursachen.

Dieser Fehler kann durch die folgenden Anweisungen generiert werden.

Public Interface interfaceA(Of u)
End Interface
Public Interface interfaceX(Of v)
    Inherits interfaceA(Of v)
End Interface
Public Interface interfaceY(Of w)
    Inherits interfaceA(Of w)
End Interface
Public Interface derivedInterface(Of t1, t2)
    Inherits interfaceX(Of t1), interfaceY(Of t2)
End Interface

Wenn die Erstellung oder Implementierung von derivedInterface durch Angeben desselben Typs für t1 und t2erfolgt, muss sie zwei Versionen von interfaceA mit identischen Typargumenten erben. Dies führt zu einer Mehrdeutigkeit in Bezug auf die Version, auf die zugegriffen werden soll.

Fehler-ID: BC32122

So beheben Sie diesen Fehler

  • Ändern Sie eines der für die abgeleitete Schnittstelle angegebenen Typargumente, sodass kein Konflikt auftritt.

    Oder

  • Entfernen Sie eine der Schnittstellen, die den potenziellen Vererbungs- oder Implementierungskonflikt auslösen, aus der Inherits -Anweisung.

Siehe auch