Impossibile ereditare l'interfaccia '<interfacename1>' perché potrebbe essere identica all'interfaccia '<interfacename2>' per alcuni argomenti tipo

Un'interfaccia generica eredita più volte dall'altra interfaccia generica e due ereditarietà possono entrare in conflitto per determinati valori degli argomenti di tipo.

Le istruzioni seguenti possono generare questo errore.

Public Interface interfaceA(Of u)

End Interface

Public Interface derivedInterface(Of t1, t2)

Inherits interfaceA(Of t1), interfaceA(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 interfaceA con argomenti di tipo identici. In questo modo si produrrebbe un'ambiguità sulla versione a cui accedere.

ID errore: BC32120

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