次の方法で共有


Module.ResolveType メソッド

定義

メタデータ トークンで識別される型を返します。

オーバーロード

ResolveType(Int32)

指定したメタデータ トークンで識別される型を返します。

ResolveType(Int32, Type[], Type[])

指定したジェネリック型パラメーターで定義されたコンテキストの、指定したメタデータ トークンで識別される型を返します。

ResolveType(Int32)

ソース:
Module.cs
ソース:
Module.cs
ソース:
Module.cs

指定したメタデータ トークンで識別される型を返します。

public:
 Type ^ ResolveType(int metadataToken);
public Type ResolveType (int metadataToken);
member this.ResolveType : int -> Type
Public Function ResolveType (metadataToken As Integer) As Type

パラメーター

metadataToken
Int32

モジュール内の型を識別するメタデータ トークン。

戻り値

指定したメタデータ トークンで識別される型を表す Type オブジェクト。

例外

metadataToken は、現在のモジュールのスコープに含まれる型のトークンではありません。

- または -

metadataToken は、要素型 var (ジェネリック型の型パラメーター) または mvar (ジェネリック メソッドの型パラメーター) を含むシグネチャが存在する TypeSpec です。

metadataToken は、現在のモジュールのスコープで有効なトークンではありません。

注釈

シグネチャに または ELEMENT_TYPE_MVARが含まれる ELEMENT_TYPE_VARTypeSpecメタデータ トークンを解決するには、 メソッドのオーバーロードをResolveType(Int32, Type[], Type[])使用します。これにより、必要なコンテキストを指定できます。 つまり、ジェネリック型のジェネリック型パラメーターや、トークンが埋め込まれているジェネリック メソッドに依存する型のメタデータ トークンを解決する場合は、これらの型パラメーターを指定できるオーバーロードを使用する必要があります。

注意

メタデータ トークンに関する情報は、共通言語インフラストラクチャ (CLI) のドキュメント(特にパーティション II: メタデータ定義とセマンティクス)にあります。 詳細については、「 ECMA 335 共通言語インフラストラクチャ (CLI)」を参照してください。

適用対象

ResolveType(Int32, Type[], Type[])

ソース:
Module.cs
ソース:
Module.cs
ソース:
Module.cs

指定したジェネリック型パラメーターで定義されたコンテキストの、指定したメタデータ トークンで識別される型を返します。

public:
 virtual Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public:
 Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public virtual Type ResolveType (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public virtual Type ResolveType (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
public Type ResolveType (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
abstract member ResolveType : int * Type[] * Type[] -> Type
override this.ResolveType : int * Type[] * Type[] -> Type
member this.ResolveType : int * Type[] * Type[] -> Type
Public Overridable Function ResolveType (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As Type
Public Function ResolveType (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As Type

パラメーター

metadataToken
Int32

モジュール内の型を識別するメタデータ トークン。

genericTypeArguments
Type[]

トークンがスコープ内にある型のジェネリック型引数を表す Type オブジェクトの配列。その型がジェネリックではない場合は null

genericMethodArguments
Type[]

トークンがスコープ内にあるメソッドのジェネリック型引数を表す Type オブジェクトの配列。そのメソッドがジェネリックではない場合は null

戻り値

指定したメタデータ トークンで識別される型を表す Type オブジェクト。

例外

metadataToken は、現在のモジュールのスコープに含まれる型のトークンではありません。

- または -

metadataToken は、要素型 var (ジェネリック型の型パラメーター) または mvar (ジェネリック メソッドの型パラメーター) を含むシグネチャを持つ TypeSpec ですが、必要なジェネリック型の引数が genericTypeArgumentsgenericMethodArguments の両方またはいずれかに提供されていません。

metadataToken は、現在のモジュールのスコープで有効なトークンではありません。

注釈

Type.GetGenericArguments ジェネリック型 metadataToken 引数の配列を取得するには、 がスコープ内にある 型で メソッドを使用します genericTypeArguments。 の MethodInfo.GetGenericArguments ジェネリック型引数の配列を取得するには、 がスコープ内にある メソッドで メソッド metadataToken を使用します genericTypeArguments。 これらの引数は、必要ない場合でも、常に安全に指定できます。

注意

メタデータ トークンに関する情報は、共通言語インフラストラクチャ (CLI) のドキュメント(特にパーティション II: メタデータ定義とセマンティクス)にあります。 詳細については、「 ECMA 335 共通言語インフラストラクチャ (CLI)」を参照してください。

ジェネリック コンテキスト (つまり、ジェネリック型のジェネリック型パラメーター、またはトークンが埋め込まれているジェネリック メソッド) を使用したトークン解決を示すコードについては、 メソッドを ResolveMethod(Int32, Type[], Type[]) 参照してください。

適用対象