Člen interfacename<>.<>název procedury, který odpovídá tomuto podpisu, nelze implementovat, protože rozhraní< interfacename> obsahuje více členů se stejným názvem a podpisem: <signaturelist>

Procedura nebo vlastnost se pokusí implementovat proceduru nebo vlastnost definovanou v implementovaném rozhraní, ale kompilátor najde více než jednu verzi procedury rozhraní nebo vlastnosti se stejným názvem a podpisem.

K této chybě může dojít v situaci s vytvořenými obecnými typy, jak znázorňují následující deklarace kostry.

Public Interface baseInterface(Of t)  
    Sub doSomething(ByVal inputValue As String)  
    Sub doSomething(ByVal inputValue As t)  
End Class  
Public Class implementingClass  
    Implements baseInterface(Of String)  
    Sub doSomething(ByVal inputValue As String) _  
        Implements baseInterface(Of String).doSomething  
    End Sub  
End Class  

Vzhledem k tomuimplementingClass, že implementuje baseInterface dodání String parametru ttypu , tyto dvě verze baseInterface doSomething mají identické podpisy, pokud implementingClass jde o to. V důsledku toho kompilátor nemůže určit, která verze se má implementovat.

ID chyby: BC30937

Oprava této chyby

  • Změňte argument typu nebo argumenty, které zadáte do základní třídy, aby nezpůsobily jeden nebo více identických podpisů členských procedur nebo vlastností.

    nebo

  • Neimplementujte tuto základní třídu. Nelze jej implementovat se sadou argumentů typu, které používáte, protože je nutné implementovat všechny jeho členy.

Viz také