Nie można dziedziczyć interfejsu "<interfacename1>", ponieważ może być identyczny z interfejsem "<interfacename2>" dla niektórych argumentów typu

Interfejs ogólny dziedziczy więcej niż raz z innego interfejsu ogólnego, a dwa dziedziczenia mogą powodować konflikt dla niektórych wartości argumentów typu.

Następujące instrukcje mogą generować ten błąd.

Public Interface interfaceA(Of u)

End Interface

Public Interface derivedInterface(Of t1, t2)

Inherits interfaceA(Of t1), interfaceA(Of t2)

End Interface

Jeśli derivedInterface jest skonstruowany lub zaimplementowany dostarczanie tego samego typu do obu t1 i t2, musi dziedziczyć dwie wersje interfaceA z identycznymi argumentami typu. Takie działanie spowodowałoby niejednoznaczność co do wersji, do której ma być uzyskiwany dostęp.

Identyfikator błędu: BC32120

Aby poprawić ten błąd

  • Zmień jeden z argumentów typu dostarczonych do interfejsu pochodnego, aby nie wystąpił konflikt.

    — lub —

  • Usuń z instrukcji Inherits jeden z interfejsów powodujących potencjalny konflikt dziedziczenia lub implementacji.

Zobacz też