''TryCast' オペランドはクラスの制約がある型パラメータでなければなりませんが、'<typeparametername>' にはクラスの制約がありません。
更新 : 2007 年 11 月
TryCast 演算子が、参照型であることが保証されない型パラメータ オペランドと共に使用されています。
TryCast は、クラス、インターフェイスなどの参照型だけを操作します。引数として型パラメータを TryCast に渡すには、型パラメータが常に参照型であるように制約する必要があります。これを行うには、以下の項目の 1 つ以上を型パラメータの制約リストに指定します。
1 つ以上のインターフェイス名 (型引数はこれらのすべてのインターフェイスを実装する必要があります)
1 つのクラス名 (型引数はこのクラスを継承する必要があります)
New (Visual Basic) 制約 (型引数は、作成元のコードがアクセスできるパラメータなしのコンストラクタを公開する必要があります。したがって、型引数はクラスである必要があります)
Class (Visual Basic) 制約 (型引数は参照型である必要があります)
Error ID: BC30793
このエラーを解決するには
この型パラメータを TryCast に渡す必要がある場合は、前掲の一覧に示した制約の 1 つ以上を使って型パラメータを制約します。
参照型しか受け付けない型パラメータにできない場合は、TryCast でその型パラメータを使うことはできません。代わりに、CType 関数 を使用できる場合があります。