DynamicILInfo Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirteç oluşturma ve kodu ekleme yöntemleri, özel durum işleme ve yerel değişken imza blobları dahil olmak üzere dinamik bir yöntem için Microsoft ara dili (MSIL) ve meta verileri oluşturmanın alternatif yolları için destek sağlar.
public ref class DynamicILInfo sealed
public ref class DynamicILInfo
public sealed class DynamicILInfo
[System.Runtime.InteropServices.ComVisible(true)]
public class DynamicILInfo
public class DynamicILInfo
type DynamicILInfo = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type DynamicILInfo = class
Public NotInheritable Class DynamicILInfo
Public Class DynamicILInfo
- Devralma
-
DynamicILInfo
- Öznitelikler
Açıklamalar
sınıfı, geliştiricilerin DynamicILInfo kullanmak ILGeneratoryerine kendi MSIL oluşturucularını yazmasına olanak tanır.
Diğer türlerin, çağrı yöntemlerinin vb. örneklerini oluşturmak için, oluşturduğunuz MSIL'in bu varlıklar için belirteçler içermesi gerekir. DynamicILInfo sınıfı, geçerli GetTokenFor kapsamında geçerli belirteçler döndüren DynamicILInfo yönteminin birkaç aşırı yüklemesini sağlar. Örneğin, Console.WriteLine yönteminin aşırı yüklemesini çağırmanız gerekiyorsa, bu aşırı yükleme için bir RuntimeMethodHandle alabilir ve MSIL'inize eklemek üzere bir jeton almak için bunu GetTokenFor yöntemine aktarabilirsiniz.
Yerel değişken imzanız, özel durumlar ve kod gövdesi için diziler oluşturduktan Byte sonra, bunları nesnenizle ilişkili SetCode, SetExceptions içine eklemek için SetLocalSignature, DynamicMethod ve DynamicILInfo yöntemlerini kullanabilirsiniz.
Kendi meta verilerinizi ve MSIL'nizi oluşturmak için Ortak Dil Altyapısı (CLI) belgelerine, özellikle de "Bölüm II: Meta Veri Tanımı ve Semantiği" ve "Bölüm III: CIL Yönerge Kümesi" hakkında bilgi sahibi olmak gerekir. Daha fazla bilgi için bkz. ECMA 335 Ortak Dil Altyapısı (CLI).
Note
Temsilci oluşturucuyu doğrudan çağırarak başka bir dinamik yönteme temsilci oluşturan kod oluşturmak için kullanmayın DynamicILInfo . Bunun yerine, CreateDelegate yöntemini kullanarak temsilciyi oluşturun. Temsilci oluşturucu ile oluşturulan bir temsilcinin hedef dinamik yöntemine bir başvurusu yoktur. Temsilci hala kullanımdayken dinamik yöntem çöp toplama tarafından geri kazanılabilir.
Özellikler
| Name | Description |
|---|---|
| DynamicMethod |
Gövdesi geçerli örnek tarafından oluşturulan dinamik yöntemi alır. |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetTokenFor(Byte[]) |
geçerli DynamicILInfokapsamında geçerli olan ve ilişkili dinamik yöntemin imzasını temsil eden bir belirteç alır. |
| GetTokenFor(DynamicMethod) |
İlişkili yöntemden çağrılacak dinamik yöntemi temsil eden geçerli DynamicILInfokapsamında geçerli bir belirteç alır. |
| GetTokenFor(RuntimeFieldHandle, RuntimeTypeHandle) |
geçerli DynamicILInfokapsamında geçerli olan ve ilişkili dinamik yöntemden erişilecek bir alanı temsil eden bir belirteç alır; alan belirtilen genel türdedir. |
| GetTokenFor(RuntimeFieldHandle) |
İlişkili dinamik yöntemden erişilecek bir alanı temsil eden geçerli DynamicILInfokapsamında geçerli bir belirteç alır. |
| GetTokenFor(RuntimeMethodHandle, RuntimeTypeHandle) |
Geçerli DynamicILInfokapsamında geçerli olan ve genel türdeki bir yöntemi temsil eden bir belirteç alır. |
| GetTokenFor(RuntimeMethodHandle) |
İlişkili dinamik yöntemden erişilecek bir yöntemi temsil eden geçerli DynamicILInfokapsamında geçerli bir belirteç alır. |
| GetTokenFor(RuntimeTypeHandle) |
İlişkili dinamik yöntemde kullanılacak türü temsil eden geçerli DynamicILInfokapsamında geçerli bir belirteç alır. |
| GetTokenFor(String) |
İlişkili dinamik yöntemde kullanılacak dize sabitini temsil eden geçerli DynamicILInfokapsamında geçerli bir belirteç alır. |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| SetCode(Byte[], Int32) |
İlişkili dinamik yöntemin kod gövdesini ayarlar. |
| SetCode(Byte*, Int32, Int32) |
İlişkili dinamik yöntemin kod gövdesini ayarlar. |
| SetExceptions(Byte[]) |
İlişkili dinamik yöntem için özel durum meta verilerini ayarlar. |
| SetExceptions(Byte*, Int32) |
İlişkili dinamik yöntem için özel durum meta verilerini ayarlar. |
| SetLocalSignature(Byte[]) |
İlişkili dinamik yöntem için yerel değişkenlerin düzenini açıklayan yerel değişken imzasını ayarlar. |
| SetLocalSignature(Byte*, Int32) |
İlişkili dinamik yöntem için yerel değişkenlerin düzenini açıklayan yerel değişken imzasını ayarlar. |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |