Module.ResolveField Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zwraca pole identyfikowane przez token metadanych.
Przeciążenia
ResolveField(Int32) |
Zwraca pole zidentyfikowane przez określony token metadanych. |
ResolveField(Int32, Type[], Type[]) |
Zwraca pole identyfikowane przez określony token metadanych w kontekście zdefiniowanym przez określone parametry typu ogólnego. |
ResolveField(Int32)
- Źródło:
- Module.cs
- Źródło:
- Module.cs
- Źródło:
- Module.cs
Zwraca pole zidentyfikowane przez określony token metadanych.
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
Parametry
- metadataToken
- Int32
Token metadanych, który identyfikuje pole w module.
Zwraca
FieldInfo Obiekt reprezentujący pole identyfikowane przez określony token metadanych.
Wyjątki
metadataToken
nie jest tokenem dla pola w zakresie bieżącego modułu.
-lub-
metadataToken
Identyfikuje pole, którego element nadrzędny TypeSpec
ma podpis zawierający typ var
elementu (parametr typu typu) lub mvar
(parametr typu metody ogólnej).
metadataToken
nie jest prawidłowym tokenem w zakresie bieżącego modułu.
Uwagi
Aby rozwiązać problem z tokenem metadanych identyfikującym pole, którego element nadrzędny TypeSpec
ma podpis zawierający typ ELEMENT_TYPE_VAR
elementu lub ELEMENT_TYPE_MVAR
, użyj ResolveField(Int32, Type[], Type[]) przeciążenia metody, które umożliwia podanie niezbędnego kontekstu. Oznacza to, że w przypadku rozpoznawania tokenu metadanych dla pola, które zależy od ogólnych parametrów typu typu typu ogólnego i/lub metody ogólnej, w której token jest osadzony, należy użyć przeciążenia, które umożliwia podanie tych parametrów typu.
Uwaga
Informacje o tokenach metadanych można znaleźć w dokumentacji infrastruktury common language infrastructure (CLI), szczególnie "Partition II: Metadata Definition and Semantics" (Partycja II: definicja metadanych i semantyka). Aby uzyskać więcej informacji, zobacz ECMA 335 Common Language Infrastructure (CLI).
Aby uzyskać kod, który demonstruje rozpoznawanie tokenu przy użyciu kontekstu ogólnego (czyli ogólnych parametrów typu typu ogólnego i/lub metody ogólnej, w której token jest osadzony), zobacz metodę ResolveMethod(Int32, Type[], Type[]) .
Dotyczy
ResolveField(Int32, Type[], Type[])
- Źródło:
- Module.cs
- Źródło:
- Module.cs
- Źródło:
- Module.cs
Zwraca pole identyfikowane przez określony token metadanych w kontekście zdefiniowanym przez określone parametry typu ogólnego.
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
Parametry
- metadataToken
- Int32
Token metadanych, który identyfikuje pole w module.
- genericTypeArguments
- Type[]
Tablica Type obiektów reprezentujących argumenty typu ogólnego typu, w którym token znajduje się w zakresie, lub null
jeśli ten typ nie jest ogólny.
- genericMethodArguments
- Type[]
Tablica Type obiektów reprezentujących argumenty typu ogólnego metody, w której token znajduje się w zakresie, lub null
jeśli ta metoda nie jest ogólna.
Zwraca
FieldInfo Obiekt reprezentujący pole identyfikowane przez określony token metadanych.
Wyjątki
metadataToken
nie jest tokenem dla pola w zakresie bieżącego modułu.
-lub-
metadataToken
Identyfikuje pole, którego element nadrzędny TypeSpec
ma sygnaturę zawierającą typ var
elementu (parametr typu typu) lub mvar
(parametr typu metody ogólnej), a niezbędne argumenty typu ogólnego nie zostały podane zarówno dla , jak genericTypeArguments
i genericMethodArguments
.
metadataToken
nie jest prawidłowym tokenem w zakresie bieżącego modułu.
Uwagi
Type.GetGenericArguments Użyj metody w typie, w którym metadataToken
znajduje się w zakresie, aby uzyskać tablicę argumentów typu ogólnego dla .genericTypeArguments
MethodInfo.GetGenericArguments Użyj metody w metodzie , gdzie metadataToken
znajduje się w zakresie, aby uzyskać tablicę argumentów typu ogólnego dla .genericTypeArguments
Zawsze bezpieczne jest podanie tych argumentów, nawet jeśli nie są potrzebne.
Uwaga
Informacje o tokenach metadanych można znaleźć w dokumentacji infrastruktury common language infrastructure (CLI), szczególnie "Partition II: Metadata Definition and Semantics" (Partycja II: definicja metadanych i semantyka). Aby uzyskać więcej informacji, zobacz ECMA 335 Common Language Infrastructure (CLI).
Aby uzyskać kod, który demonstruje rozpoznawanie tokenu przy użyciu kontekstu ogólnego (czyli ogólnych parametrów typu typu ogólnego i/lub metody ogólnej, w której token jest osadzony), zobacz metodę ResolveMethod(Int32, Type[], Type[]) .