''TryCast' オペランドはクラスの制約がある型パラメータでなければなりませんが、'<typeparametername>' にはクラスの制約がありません。

更新 : 2007 年 11 月

TryCast 演算子が、参照型であることが保証されない型パラメータ オペランドと共に使用されています。

TryCast は、クラス、インターフェイスなどの参照型だけを操作します。引数として型パラメータを TryCast に渡すには、型パラメータが常に参照型であるように制約する必要があります。これを行うには、以下の項目の 1 つ以上を型パラメータの制約リストに指定します。

  • 1 つ以上のインターフェイス名 (型引数はこれらのすべてのインターフェイスを実装する必要があります)

  • 1 つのクラス名 (型引数はこのクラスを継承する必要があります)

  • New (Visual Basic) 制約 (型引数は、作成元のコードがアクセスできるパラメータなしのコンストラクタを公開する必要があります。したがって、型引数はクラスである必要があります)

  • Class (Visual Basic) 制約 (型引数は参照型である必要があります)

Error ID: BC30793

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

  • この型パラメータを TryCast に渡す必要がある場合は、前掲の一覧に示した制約の 1 つ以上を使って型パラメータを制約します。

  • 参照型しか受け付けない型パラメータにできない場合は、TryCast でその型パラメータを使うことはできません。代わりに、CType 関数 を使用できる場合があります。

参照

概念

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

値型と参照型

拡大変換と縮小変換

暗黙の型変換と明示的な型変換

参照

型リスト