型引数 '<typeargumentname>' は 'MustInherit' として宣言され、型パラメータ '<typeparametername>' の 'New' 制約を満たしていません。

更新 : 2007 年 11 月

ジェネリック型が型引数に MustInherit クラスを指定して呼び出されていますが、対応する型パラメータが New 制約を指定して宣言されています。

New 制約を指定した場合、対応する型引数に渡される型は、オブジェクトの作成をサポートする必要があります。しかし、抽象クラス、つまり MustInherit で宣言されるクラスは、そこからオブジェクトを作成できないため、コンストラクタを公開しません。

Error ID: BC32082

このエラーを解決するには

  1. 型引数に使用するクラスを抽象クラスにする必要がない場合は、MustInherit キーワードを宣言から削除します。

  2. 型引数に使用するクラスを抽象クラスにする必要があるが、ジェネリック型の作成に使用する必要がない場合は、型引数に別のクラスを渡します。

  3. 対応する型パラメータが、そこに渡される型からオブジェクトを作成する必要がない場合は、宣言から New 制約を削除します。

参照

概念

Visual Basic におけるジェネリック型

参照

New (Visual Basic)

MustInherit