DynamicILInfo.GetTokenFor 方法

定义

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示关联动态方法的 MSIL 流中的一个字符串、字段、方法、类型或签名。

重载

GetTokenFor(Byte[])

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示关联动态方法的签名。

GetTokenFor(DynamicMethod)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联方法调用的动态方法。

GetTokenFor(RuntimeFieldHandle)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联动态方法访问的字段。

GetTokenFor(RuntimeMethodHandle)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联动态方法访问的方法。

GetTokenFor(RuntimeTypeHandle)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将在关联动态方法中使用的类型。

GetTokenFor(String)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将在关联动态方法中使用的字符串。

GetTokenFor(RuntimeFieldHandle, RuntimeTypeHandle)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联动态方法访问的字段;该字段在指定的泛型类型上。

GetTokenFor(RuntimeMethodHandle, RuntimeTypeHandle)

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示泛型类型上的一个方法。

GetTokenFor(Byte[])

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示关联动态方法的签名。

public:
 int GetTokenFor(cli::array <System::Byte> ^ signature);
public int GetTokenFor (byte[] signature);
member this.GetTokenFor : byte[] -> int
Public Function GetTokenFor (signature As Byte()) As Integer

参数

signature
Byte[]

包含签名的数组。

返回

一个标记,该标记可嵌入关联动态方法的元数据和 MSIL 流中。

注解

有关签名 Blob 的信息,请参阅公共语言基础结构 (CLI) 文档,尤其是“分区 II:元数据定义和语义”。 有关详细信息,请参阅 ECMA 335 公共语言基础结构 (CLI)

适用于

GetTokenFor(DynamicMethod)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联方法调用的动态方法。

public:
 int GetTokenFor(System::Reflection::Emit::DynamicMethod ^ method);
public int GetTokenFor (System.Reflection.Emit.DynamicMethod method);
member this.GetTokenFor : System.Reflection.Emit.DynamicMethod -> int
Public Function GetTokenFor (method As DynamicMethod) As Integer

参数

method
DynamicMethod

要调用的动态方法。

返回

一个标记,可以嵌入关联动态方法的 MSIL 流中,作为 MSIL 指令的目标。

注解

此方法重载返回的标记允许从与当前 DynamicILInfo 对象关联的动态方法调用动态方法。 若要以递归方式调用关联的动态方法,请传递 属性的值 DynamicMethod

适用于

GetTokenFor(RuntimeFieldHandle)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联动态方法访问的字段。

public:
 int GetTokenFor(RuntimeFieldHandle field);
public int GetTokenFor (RuntimeFieldHandle field);
member this.GetTokenFor : RuntimeFieldHandle -> int
Public Function GetTokenFor (field As RuntimeFieldHandle) As Integer

参数

field
RuntimeFieldHandle

要访问的字段。

返回

当前 DynamicILInfo 对象的范围内的一个标记,可用作访问字段的 MSIL 指令的操作数。

注解

必须为将由与当前 DynamicILInfo 对象关联的动态方法访问的任何字段获取令牌。 Type.GetField使用 方法获取FieldInfo要访问的字段的 ,然后使用 FieldHandle 属性获取 RuntimeFieldHandle

适用于

GetTokenFor(RuntimeMethodHandle)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联动态方法访问的方法。

public:
 int GetTokenFor(RuntimeMethodHandle method);
public int GetTokenFor (RuntimeMethodHandle method);
member this.GetTokenFor : RuntimeMethodHandle -> int
Public Function GetTokenFor (method As RuntimeMethodHandle) As Integer

参数

method
RuntimeMethodHandle

要访问的方法。

返回

当前 Call 对象的范围内的一个标记,可以用作访问方法的 MSIL 指令的操作数(如 LdtokenDynamicILInfo)。

注解

必须为将由与当前 DynamicILInfo 对象关联的动态方法访问的任何方法获取令牌。 Type.GetMethod使用 方法获取MethodInfo要访问的方法的 ,然后使用 MethodHandle 属性获取 RuntimeMethodHandle

注意

对于属于泛型类型的方法,请使用 GetTokenFor(RuntimeMethodHandle, RuntimeTypeHandle) 方法重载并为泛型类型指定 RuntimeTypeHandle

适用于

GetTokenFor(RuntimeTypeHandle)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将在关联动态方法中使用的类型。

public:
 int GetTokenFor(RuntimeTypeHandle type);
public int GetTokenFor (RuntimeTypeHandle type);
member this.GetTokenFor : RuntimeTypeHandle -> int
Public Function GetTokenFor (type As RuntimeTypeHandle) As Integer

参数

type
RuntimeTypeHandle

要使用的类型。

返回

当前 DynamicILInfo 对象的范围内的一个标记,可以用作需要一个类型的 MSIL 指令的操作数。

注解

此方法重载返回的标记允许定义局部变量类型,并发出 MSIL,以在与当前 DynamicILInfo 对象关联的动态方法中创建类型的实例。

若要获取 RuntimeTypeHandle 表示类型的 ,请使用 Type.TypeHandle 属性。

适用于

GetTokenFor(String)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将在关联动态方法中使用的字符串。

public:
 int GetTokenFor(System::String ^ literal);
public int GetTokenFor (string literal);
member this.GetTokenFor : string -> int
Public Function GetTokenFor (literal As String) As Integer

参数

literal
String

要使用的字符串。

返回

当前 DynamicILInfo 对象的范围内的一个标记,可用作需要一个字符串的 MSIL 指令的操作数。

适用于

GetTokenFor(RuntimeFieldHandle, RuntimeTypeHandle)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示将从关联动态方法访问的字段;该字段在指定的泛型类型上。

public:
 int GetTokenFor(RuntimeFieldHandle field, RuntimeTypeHandle contextType);
public int GetTokenFor (RuntimeFieldHandle field, RuntimeTypeHandle contextType);
member this.GetTokenFor : RuntimeFieldHandle * RuntimeTypeHandle -> int
Public Function GetTokenFor (field As RuntimeFieldHandle, contextType As RuntimeTypeHandle) As Integer

参数

field
RuntimeFieldHandle

要访问的字段。

contextType
RuntimeTypeHandle

该字段所属的泛型类型。

返回

当前 DynamicILInfo 对象的范围内的一个标记,可用作访问字段的 MSIL 指令的操作数。

注解

必须为将由与当前 DynamicILInfo 对象关联的动态方法访问的任何字段获取令牌。 Type.GetField使用 方法获取FieldInfo要访问的字段的 ,然后使用 FieldHandle 属性获取 RuntimeFieldHandle

适用于

GetTokenFor(RuntimeMethodHandle, RuntimeTypeHandle)

Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs
Source:
DynamicILGenerator.cs

获取一个在当前 DynamicILInfo 的范围内有效的标记,它表示泛型类型上的一个方法。

public:
 int GetTokenFor(RuntimeMethodHandle method, RuntimeTypeHandle contextType);
public int GetTokenFor (RuntimeMethodHandle method, RuntimeTypeHandle contextType);
member this.GetTokenFor : RuntimeMethodHandle * RuntimeTypeHandle -> int
Public Function GetTokenFor (method As RuntimeMethodHandle, contextType As RuntimeTypeHandle) As Integer

参数

method
RuntimeMethodHandle

方法。

contextType
RuntimeTypeHandle

该方法所属的泛型类型。

返回

当前 Call 对象的范围内的一个标记,可以用作访问方法的 MSIL 指令的操作数(如 LdtokenDynamicILInfo)。

注解

必须为将由与当前 DynamicILInfo 对象关联的动态方法调用的任何方法获取令牌。 Type.GetMethod使用 方法获取MethodInfo要调用的方法的 ,然后使用 MethodHandle 属性获取 RuntimeMethodHandle

适用于