Прочитать на английском

Поделиться через


Не удается наследовать интерфейс interfacename1>, так как он может быть идентичен< интерфейсу< interfacename2>, от которого интерфейс "<interfacename3>" наследует для некоторых аргументов типа

Универсальный интерфейс наследует от двух или более универсальных интерфейсов, и два из этих наследований могут конфликтовать для некоторых значений аргументов типов.

Следующие операторы могут привести к этой ошибке.

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

Если derivedInterface создается или реализуется, предоставляя один и тот же тип как для t1 , так и для t2, он должен наследовать две версии interfaceA с одинаковыми аргументами типов. Это приведет к неоднозначности определения, к какой версии следует получить доступ.

Идентификатор ошибки: BC32123

Исправление ошибки

  • Измените один из аргументов типов, предоставленных унаследованному интерфейсу, чтобы не было конфликтов.

    –или–

  • Удалите из оператора Inherits один из интерфейсов, вызывающих возможный конфликт наследования или реализации.

См. также