Aracılığıyla paylaş


System.Reflection.Emit.MethodBuilder sınıfı

Bu makale, bu API'nin başvuru belgelerine ek açıklamalar sağlar.

sınıfı MethodBuilder ad, öznitelikler, imza ve yöntem gövdesi dahil olmak üzere ortak ara dilde (CIL) bir yöntemi tam olarak tanımlamak için kullanılır. Çalışma zamanında sınıflar oluşturmak için TypeBuilder sınıfı ile birlikte kullanılır.

Yansıma yayma kullanarak genel yöntemleri tanımlayabilir ve yöntemleri tür üyeleri olarak tanımlayabilirsiniz. Yöntemleri tanımlayan API'ler nesneleri döndürür MethodBuilder .

Genel yöntemler

Genel bir yöntem, ModuleBuilder.DefineGlobalMethod yöntemi kullanılarak tanımlanır ve bu yöntem bir MethodBuilder nesnesi döndürür.

Genel yöntemler statik olmalıdır. Dinamik bir modül genel yöntemler içeriyorsa, tüm genel işlevler tanımlanana kadar ortak dil çalışma zamanı dinamik modülü düzeltmeyi ertelediği için dinamik modül veya içeren dinamik derleme kalıcı hale getirilmeden önce ModuleBuilder.CreateGlobalFunctions yöntemi çağrılmalıdır.

Global bir yerel yöntem, ModuleBuilder.DefinePInvokeMethod yöntemi kullanılarak tanımlanır. Platform çağırma (PInvoke) yöntemleri soyut veya sanal olarak bildirilmemelidir. Çalışma zamanı, platform çağırma yönteminin MethodAttributes.PinvokeImpl özniteliğini ayarlar.

Tiplerin öğesi olarak yöntemler

Yöntemi, nesnesini döndüren TypeBuilder.DefineMethod yöntemi kullanılarak MethodBuilder tür üyesi olarak tanımlanır.

DefineParameter yöntemi, bir parametrenin veya dönüş değerinin ad ve parametre özniteliklerini ayarlamak için kullanılır. ParameterBuilder Bu yöntem tarafından döndürülen nesne bir parametreyi veya dönüş değerini temsil eder. ParameterBuilder nesnesi, sıralamayı ayarlamak, sabit değeri ayarlamak ve özel öznitelikleri uygulamak için kullanılabilir.

Özellikler

Numaralandırmanın MethodAttributes üyeleri dinamik yöntemin kesin karakterini tanımlar:

Bilinen sorunlar