Module.ResolveField 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回中繼資料語彙基元所識別的欄位。
多載
ResolveField(Int32) |
傳回指定之中繼資料語彙基元所識別的欄位。 |
ResolveField(Int32, Type[], Type[]) |
以指定之泛型型別參數所定義的內容,傳回指定之中繼資料語彙基元所識別的欄位。 |
ResolveField(Int32)
- 來源:
- Module.cs
- 來源:
- Module.cs
- 來源:
- Module.cs
傳回指定之中繼資料語彙基元所識別的欄位。
public:
System::Reflection::FieldInfo ^ ResolveField(int metadataToken);
public System.Reflection.FieldInfo? ResolveField (int metadataToken);
public System.Reflection.FieldInfo ResolveField (int metadataToken);
member this.ResolveField : int -> System.Reflection.FieldInfo
Public Function ResolveField (metadataToken As Integer) As FieldInfo
參數
- metadataToken
- Int32
識別模組內欄位的中繼資料語彙基元。
傳回
FieldInfo 物件,表示指定之中繼資料語彙基元所識別的欄位。
例外狀況
metadataToken
在目前模組範圍中不是欄位的語彙基元。
-或-
metadataToken
可識別欄位,而此欄位的父代 TypeSpec
具有包含項目型別 var
(泛型型別的型別參數) 或 mvar
(泛型方法的型別參數) 的簽章。
metadataToken
在目前模組的範圍中是無效的語彙基元。
備註
若要解析中繼資料權杖,識別父 TypeSpec
系具有包含專案類型 ELEMENT_TYPE_VAR
或 ELEMENT_TYPE_MVAR
之簽章的欄位,請使用 ResolveField(Int32, Type[], Type[]) 方法多載,這可讓您提供必要的內容。 也就是說,當您解析欄位的中繼資料權杖時,該欄位相依于泛型型別參數和/或標記內嵌的泛型方法,您必須使用多載,讓您提供這些類型參數。
注意
您可以在 Common Language Infrastructure (CLI) 檔中找到中繼資料權杖的相關資訊,特別是「分割區 II:元資料定義和語意」。 如需詳細資訊,請參閱 ECMA 335 Common Language Infrastructure (CLI) 。
針對使用泛型內容 (示範權杖解析的程式碼,也就是泛型型別和/或標記內嵌的泛型方法泛型型別參數,) 請參閱 ResolveMethod(Int32, Type[], Type[]) 方法。
適用於
ResolveField(Int32, Type[], Type[])
- 來源:
- Module.cs
- 來源:
- Module.cs
- 來源:
- Module.cs
以指定之泛型型別參數所定義的內容,傳回指定之中繼資料語彙基元所識別的欄位。
public:
virtual System::Reflection::FieldInfo ^ ResolveField(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public:
System::Reflection::FieldInfo ^ ResolveField(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public virtual System.Reflection.FieldInfo? ResolveField (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public virtual System.Reflection.FieldInfo ResolveField (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
public System.Reflection.FieldInfo ResolveField (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
abstract member ResolveField : int * Type[] * Type[] -> System.Reflection.FieldInfo
override this.ResolveField : int * Type[] * Type[] -> System.Reflection.FieldInfo
member this.ResolveField : int * Type[] * Type[] -> System.Reflection.FieldInfo
Public Overridable Function ResolveField (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As FieldInfo
Public Function ResolveField (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As FieldInfo
參數
- metadataToken
- Int32
識別模組內欄位的中繼資料語彙基元。
傳回
FieldInfo 物件,表示指定之中繼資料語彙基元所識別的欄位。
例外狀況
metadataToken
在目前模組範圍中不是欄位的語彙基元。
-或-
metadataToken
可識別欄位,而此欄位的父代 TypeSpec
具有包含項目型別 var
(泛型型別的型別參數) 或 mvar
(泛型方法的型別參數),且未提供 genericTypeArguments
和 genericMethodArguments
其一或兩者的必要泛型型別引數。
metadataToken
在目前模組的範圍中是無效的語彙基元。
備註
Type.GetGenericArguments在 範圍中的 型 metadataToken
別上使用 方法,以取得 的泛型型別引數 genericTypeArguments
陣列。 在 MethodInfo.GetGenericArguments 範圍中的 方法上使用 方法 metadataToken
,以取得 的泛型型別引數 genericTypeArguments
陣列。 即使不需要這些引數,也一定安全。
注意
您可以在 Common Language Infrastructure (CLI) 檔中找到中繼資料權杖的相關資訊,特別是「分割區 II:元資料定義和語意」。 如需詳細資訊,請參閱 ECMA 335 Common Language Infrastructure (CLI) 。
針對使用泛型內容 (示範權杖解析的程式碼,也就是泛型型別和/或標記內嵌的泛型方法泛型型別參數,) 請參閱 ResolveMethod(Int32, Type[], Type[]) 方法。
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應