'<interfacename1>' uygulanamıyor.<membername>', çünkü uygulaması '<interfacename2>' uygulamasıyla çakışabilir.<bazı tür bağımsız değişkenleri için membername>'

Bir sınıf, biri başka bir arabirimden devralan birden fazla genel arabirim uygular ve bir arabirim üyesinin iki uygulaması, tür bağımsız değişkenlerinin belirli değerleri için çakışabilir.

Aşağıdaki deyimler bu hatayı oluşturabilir.

Public Interface iFace1(Of t)  
    Sub testSub()  
End Interface  
Public Interface iFace2(Of u)  
    Inherits iFace1(Of u)  
End Interface  
Public Class testClass(Of y, z)  
    Implements iFace1(Of y), iFace2(Of z)  
    Public Sub testSuby() Implements iFace1(Of y).testSub  
    End Sub  
    Public Sub testSubz() Implements iFace1(Of z).testSub  
    End Sub  
End Class  

kendi iFace2 tür parametresini ()u kullanarak öğesini iFace1 devraldığından, testClass ve'ye y zaynı tür bağımsız değişkeni geçirilirse iki sürümü iFace1.testSub aynı imzalarla uygulanır. Bu, erişilmesi gereken sürümle ilgili bir belirsizlik oluşturur.

Hata Kimliği: BC32125

Bu hatayı düzeltmek için

  • İki farklı tür bağımsız değişkeniyle uygulanmayacak şekilde iFace1 arabirimlerin devralma yapısını değiştirin.

    -veya-

  • Uygulama çakışması Implements ile sonuçlayan arabirimlerden birini deyiminden kaldırın.

Ayrıca bkz.