クラス '<クラス名>' は同じ名前とシグネチャが指定された複数のメンバーを含むため、このシグネチャに一致するメンバー '<クラス名>.<プロシージャ名>' をオーバーライドすることはできません: <シグネチャ リスト>
プロシージャまたはプロパティが継承先のプロシージャまたはプロパティをオーバーライドしようとしましたが、コンパイラによって、同じ名前およびシグネチャを持つ基本プロシージャまたはプロパティの複数のバージョンが検出されました。
このエラーは、次のスケルトン宣言に示すように、ジェネリック型が構築されている場合に発生することがあります。
Public Class baseClass(Of t)
Public Overridable Sub doSomething(ByVal inputValue As String)
End Sub
Public Overridable Sub doSomething(ByVal inputValue As t)
End Sub
End Class
Public Class derivedClass
Inherits baseClass(Of String)
Overrides Sub doSomething(ByVal inputValue As String)
End Sub
End Class
derivedClass
は baseClass
を指定する String
を型パラメーター t
に継承するため、 doSomething
に関する限り、 baseClass
にある derivedClass
の 2 つのバージョンは同じシグネチャを引き継ぎます。 その結果、コンパイラはどのバージョンをオーバーライドするか判断できません。
エラー ID: BC30935
メンバーのプロシージャまたはプロパティの 1 つまたは複数のシグネチャが同じにならないように、基底クラスに指定する 1 つ以上の型引数を変更します。
または
使用している一連の型引数と共に基底クラスを継承する必要がある場合は、このエラー メッセージに示されているプロシージャまたはプロパティをオーバーライドしないでください。
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。