Non è possibile ereditare l'interfaccia '<interfacename1>' perché l'interfaccia '<interfacename2>' da cui eredita potrebbe essere identica all'interfaccia '<interfacename3>' per alcuni argomenti tipo

Un'interfaccia generica eredita da due o più interfacce generiche e due delle ereditarietà potrebbero essere in conflitto per determinati valori di argomenti di tipo.

Le istruzioni seguenti possono generare questo errore.

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

Se l'interfaccia derivedInterface è costruita o implementata specificando lo stesso tipo sia in t1 che in t2, deve ereditare due versioni di interfaceX con argomenti di tipo identici. In questo modo si produrrebbe un'ambiguità sulla versione a cui accedere.

ID errore: BC32121

Per correggere l'errore

  • Modificare uno degli argomenti di tipo forniti all'interfaccia derivata in modo che non siano presenti conflitti.

    oppure

  • Rimuovere dall'istruzione Inherits una delle interfacce che determina il potenziale conflitto di ereditarietà o implementazione.

Vedi anche