ConstructorBuilder 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.
Dinamik bir sınıfın oluşturucusunun tanımlar ve temsil eder.
public ref class ConstructorBuilder sealed : System::Reflection::ConstructorInfo
public ref class ConstructorBuilder abstract : System::Reflection::ConstructorInfo
public ref class ConstructorBuilder sealed : System::Reflection::ConstructorInfo, System::Runtime::InteropServices::_ConstructorBuilder
public sealed class ConstructorBuilder : System.Reflection.ConstructorInfo
public abstract class ConstructorBuilder : System.Reflection.ConstructorInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
public sealed class ConstructorBuilder : System.Reflection.ConstructorInfo, System.Runtime.InteropServices._ConstructorBuilder
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ConstructorBuilder : System.Reflection.ConstructorInfo, System.Runtime.InteropServices._ConstructorBuilder
type ConstructorBuilder = class
inherit ConstructorInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
type ConstructorBuilder = class
inherit ConstructorInfo
interface _ConstructorBuilder
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ConstructorBuilder = class
inherit ConstructorInfo
interface _ConstructorBuilder
Public NotInheritable Class ConstructorBuilder
Inherits ConstructorInfo
Public MustInherit Class ConstructorBuilder
Inherits ConstructorInfo
Public NotInheritable Class ConstructorBuilder
Inherits ConstructorInfo
Implements _ConstructorBuilder
- Devralma
- Öznitelikler
- Uygulamalar
Örnekler
Aşağıdaki kod örneği, bağlamsal ConstructorBuilder
kullanımını gösterir.
using namespace System;
using namespace System::Threading;
using namespace System::Reflection;
using namespace System::Reflection::Emit;
Type^ DynamicPointTypeGen()
{
Type^ pointType = nullptr;
array<Type^>^temp0 = {int::typeid,int::typeid,int::typeid};
array<Type^>^ctorParams = temp0;
AppDomain^ myDomain = Thread::GetDomain();
AssemblyName^ myAsmName = gcnew AssemblyName;
myAsmName->Name = "MyDynamicAssembly";
AssemblyBuilder^ myAsmBuilder = myDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::RunAndSave );
ModuleBuilder^ pointModule = myAsmBuilder->DefineDynamicModule( "PointModule", "Point.dll" );
TypeBuilder^ pointTypeBld = pointModule->DefineType( "Point", TypeAttributes::Public );
FieldBuilder^ xField = pointTypeBld->DefineField( "x", int::typeid, FieldAttributes::Public );
FieldBuilder^ yField = pointTypeBld->DefineField( "y", int::typeid, FieldAttributes::Public );
FieldBuilder^ zField = pointTypeBld->DefineField( "z", int::typeid, FieldAttributes::Public );
Type^ objType = Type::GetType( "System.Object" );
ConstructorInfo^ objCtor = objType->GetConstructor( gcnew array<Type^>(0) );
ConstructorBuilder^ pointCtor = pointTypeBld->DefineConstructor( MethodAttributes::Public, CallingConventions::Standard, ctorParams );
ILGenerator^ ctorIL = pointCtor->GetILGenerator();
// NOTE: ldarg.0 holds the "this" reference - ldarg.1, ldarg.2, and ldarg.3
// hold the actual passed parameters. ldarg.0 is used by instance methods
// to hold a reference to the current calling bject instance. Static methods
// do not use arg.0, since they are not instantiated and hence no reference
// is needed to distinguish them.
ctorIL->Emit( OpCodes::Ldarg_0 );
// Here, we wish to create an instance of System::Object by invoking its
// constructor, as specified above.
ctorIL->Emit( OpCodes::Call, objCtor );
// Now, we'll load the current instance in arg 0, along
// with the value of parameter "x" stored in arg 1, into stfld.
ctorIL->Emit( OpCodes::Ldarg_0 );
ctorIL->Emit( OpCodes::Ldarg_1 );
ctorIL->Emit( OpCodes::Stfld, xField );
// Now, we store arg 2 "y" in the current instance with stfld.
ctorIL->Emit( OpCodes::Ldarg_0 );
ctorIL->Emit( OpCodes::Ldarg_2 );
ctorIL->Emit( OpCodes::Stfld, yField );
// Last of all, arg 3 "z" gets stored in the current instance.
ctorIL->Emit( OpCodes::Ldarg_0 );
ctorIL->Emit( OpCodes::Ldarg_3 );
ctorIL->Emit( OpCodes::Stfld, zField );
// Our work complete, we return.
ctorIL->Emit( OpCodes::Ret );
// Now, let's create three very simple methods so we can see our fields.
array<String^>^temp1 = {"GetX","GetY","GetZ"};
array<String^>^mthdNames = temp1;
System::Collections::IEnumerator^ myEnum = mthdNames->GetEnumerator();
while ( myEnum->MoveNext() )
{
String^ mthdName = safe_cast<String^>(myEnum->Current);
MethodBuilder^ getFieldMthd = pointTypeBld->DefineMethod( mthdName, MethodAttributes::Public, int::typeid, nullptr );
ILGenerator^ mthdIL = getFieldMthd->GetILGenerator();
mthdIL->Emit( OpCodes::Ldarg_0 );
if ( mthdName->Equals( "GetX" ) )
mthdIL->Emit( OpCodes::Ldfld, xField );
else
if ( mthdName->Equals( "GetY" ) )
mthdIL->Emit( OpCodes::Ldfld, yField );
else
if ( mthdName->Equals( "GetZ" ) )
mthdIL->Emit( OpCodes::Ldfld, zField );
mthdIL->Emit( OpCodes::Ret );
}
pointType = pointTypeBld->CreateType();
// Let's save it, just for posterity.
myAsmBuilder->Save( "Point.dll" );
return pointType;
}
int main()
{
Type^ myDynamicType = nullptr;
Object^ aPoint = nullptr;
array<Type^>^temp2 = {int::typeid,int::typeid,int::typeid};
array<Type^>^aPtypes = temp2;
array<Object^>^temp3 = {4,5,6};
array<Object^>^aPargs = temp3;
// Call the method to build our dynamic class.
myDynamicType = DynamicPointTypeGen();
Console::WriteLine( "Some information about my new Type '{0}':", myDynamicType->FullName );
Console::WriteLine( "Assembly: '{0}'", myDynamicType->Assembly );
Console::WriteLine( "Attributes: '{0}'", myDynamicType->Attributes );
Console::WriteLine( "Module: '{0}'", myDynamicType->Module );
Console::WriteLine( "Members: " );
System::Collections::IEnumerator^ myEnum = myDynamicType->GetMembers()->GetEnumerator();
while ( myEnum->MoveNext() )
{
MemberInfo^ member = safe_cast<MemberInfo^>(myEnum->Current);
Console::WriteLine( "-- {0} {1};", member->MemberType, member->Name );
}
Console::WriteLine( "---" );
// Let's take a look at the constructor we created.
ConstructorInfo^ myDTctor = myDynamicType->GetConstructor( aPtypes );
Console::WriteLine( "Constructor: {0};", myDTctor );
Console::WriteLine( "---" );
// Now, we get to use our dynamically-created class by invoking the constructor.
aPoint = myDTctor->Invoke( aPargs );
Console::WriteLine( "aPoint is type {0}.", aPoint->GetType() );
// Finally, let's reflect on the instance of our new type - aPoint - and
// make sure everything proceeded according to plan.
Console::WriteLine( "aPoint.x = {0}", myDynamicType->InvokeMember( "GetX", BindingFlags::InvokeMethod, nullptr, aPoint, gcnew array<Object^>(0) ) );
Console::WriteLine( "aPoint.y = {0}", myDynamicType->InvokeMember( "GetY", BindingFlags::InvokeMethod, nullptr, aPoint, gcnew array<Object^>(0) ) );
Console::WriteLine( "aPoint.z = {0}", myDynamicType->InvokeMember( "GetZ", BindingFlags::InvokeMethod, nullptr, aPoint, gcnew array<Object^>(0) ) );
// +++ OUTPUT +++
// Some information about my new Type 'Point':
// Assembly: 'MyDynamicAssembly, Version=0.0.0.0'
// Attributes: 'AutoLayout, AnsiClass, NotPublic, Public'
// Module: 'PointModule'
// Members:
// -- Field x;
// -- Field y;
// -- Field z;
// -- Method GetHashCode;
// -- Method Equals;
// -- Method ToString;
// -- Method GetType;
// -- Constructor .ctor;
// ---
// Constructor: Void .ctor(Int32, Int32, Int32);
// ---
// aPoint is type Point.
// aPoint.x = 4
// aPoint.y = 5
// aPoint.z = 6
}
using System;
using System.Threading;
using System.Reflection;
using System.Reflection.Emit;
class TestCtorBuilder {
public static Type DynamicPointTypeGen() {
Type pointType = null;
Type[] ctorParams = new Type[] {typeof(int),
typeof(int),
typeof(int)};
AppDomain myDomain = Thread.GetDomain();
AssemblyName myAsmName = new AssemblyName();
myAsmName.Name = "MyDynamicAssembly";
AssemblyBuilder myAsmBuilder = myDomain.DefineDynamicAssembly(
myAsmName,
AssemblyBuilderAccess.RunAndSave);
ModuleBuilder pointModule = myAsmBuilder.DefineDynamicModule("PointModule",
"Point.dll");
TypeBuilder pointTypeBld = pointModule.DefineType("Point",
TypeAttributes.Public);
FieldBuilder xField = pointTypeBld.DefineField("x", typeof(int),
FieldAttributes.Public);
FieldBuilder yField = pointTypeBld.DefineField("y", typeof(int),
FieldAttributes.Public);
FieldBuilder zField = pointTypeBld.DefineField("z", typeof(int),
FieldAttributes.Public);
Type objType = Type.GetType("System.Object");
ConstructorInfo objCtor = objType.GetConstructor(new Type[0]);
ConstructorBuilder pointCtor = pointTypeBld.DefineConstructor(
MethodAttributes.Public,
CallingConventions.Standard,
ctorParams);
ILGenerator ctorIL = pointCtor.GetILGenerator();
// NOTE: ldarg.0 holds the "this" reference - ldarg.1, ldarg.2, and ldarg.3
// hold the actual passed parameters. ldarg.0 is used by instance methods
// to hold a reference to the current calling object instance. Static methods
// do not use arg.0, since they are not instantiated and hence no reference
// is needed to distinguish them.
ctorIL.Emit(OpCodes.Ldarg_0);
// Here, we wish to create an instance of System.Object by invoking its
// constructor, as specified above.
ctorIL.Emit(OpCodes.Call, objCtor);
// Now, we'll load the current instance ref in arg 0, along
// with the value of parameter "x" stored in arg 1, into stfld.
ctorIL.Emit(OpCodes.Ldarg_0);
ctorIL.Emit(OpCodes.Ldarg_1);
ctorIL.Emit(OpCodes.Stfld, xField);
// Now, we store arg 2 "y" in the current instance with stfld.
ctorIL.Emit(OpCodes.Ldarg_0);
ctorIL.Emit(OpCodes.Ldarg_2);
ctorIL.Emit(OpCodes.Stfld, yField);
// Last of all, arg 3 "z" gets stored in the current instance.
ctorIL.Emit(OpCodes.Ldarg_0);
ctorIL.Emit(OpCodes.Ldarg_3);
ctorIL.Emit(OpCodes.Stfld, zField);
// Our work complete, we return.
ctorIL.Emit(OpCodes.Ret);
// Now, let's create three very simple methods so we can see our fields.
string[] mthdNames = new string[] {"GetX", "GetY", "GetZ"};
foreach (string mthdName in mthdNames) {
MethodBuilder getFieldMthd = pointTypeBld.DefineMethod(
mthdName,
MethodAttributes.Public,
typeof(int),
null);
ILGenerator mthdIL = getFieldMthd.GetILGenerator();
mthdIL.Emit(OpCodes.Ldarg_0);
switch (mthdName) {
case "GetX": mthdIL.Emit(OpCodes.Ldfld, xField);
break;
case "GetY": mthdIL.Emit(OpCodes.Ldfld, yField);
break;
case "GetZ": mthdIL.Emit(OpCodes.Ldfld, zField);
break;
}
mthdIL.Emit(OpCodes.Ret);
}
// Finally, we create the type.
pointType = pointTypeBld.CreateType();
// Let's save it, just for posterity.
myAsmBuilder.Save("Point.dll");
return pointType;
}
public static void Main() {
Type myDynamicType = null;
object aPoint = null;
Type[] aPtypes = new Type[] {typeof(int), typeof(int), typeof(int)};
object[] aPargs = new object[] {4, 5, 6};
// Call the method to build our dynamic class.
myDynamicType = DynamicPointTypeGen();
Console.WriteLine("Some information about my new Type '{0}':",
myDynamicType.FullName);
Console.WriteLine("Assembly: '{0}'", myDynamicType.Assembly);
Console.WriteLine("Attributes: '{0}'", myDynamicType.Attributes);
Console.WriteLine("Module: '{0}'", myDynamicType.Module);
Console.WriteLine("Members: ");
foreach (MemberInfo member in myDynamicType.GetMembers()) {
Console.WriteLine("-- {0} {1};", member.MemberType, member.Name);
}
Console.WriteLine("---");
// Let's take a look at the constructor we created.
ConstructorInfo myDTctor = myDynamicType.GetConstructor(aPtypes);
Console.WriteLine("Constructor: {0};", myDTctor.ToString());
Console.WriteLine("---");
// Now, we get to use our dynamically-created class by invoking the constructor.
aPoint = myDTctor.Invoke(aPargs);
Console.WriteLine("aPoint is type {0}.", aPoint.GetType());
// Finally, let's reflect on the instance of our new type - aPoint - and
// make sure everything proceeded according to plan.
Console.WriteLine("aPoint.x = {0}",
myDynamicType.InvokeMember("GetX",
BindingFlags.InvokeMethod,
null,
aPoint,
new object[0]));
Console.WriteLine("aPoint.y = {0}",
myDynamicType.InvokeMember("GetY",
BindingFlags.InvokeMethod,
null,
aPoint,
new object[0]));
Console.WriteLine("aPoint.z = {0}",
myDynamicType.InvokeMember("GetZ",
BindingFlags.InvokeMethod,
null,
aPoint,
new object[0]));
// +++ OUTPUT +++
// Some information about my new Type 'Point':
// Assembly: 'MyDynamicAssembly, Version=0.0.0.0'
// Attributes: 'AutoLayout, AnsiClass, NotPublic, Public'
// Module: 'PointModule'
// Members:
// -- Field x;
// -- Field y;
// -- Field z;
// -- Method GetHashCode;
// -- Method Equals;
// -- Method ToString;
// -- Method GetType;
// -- Constructor .ctor;
// ---
// Constructor: Void .ctor(Int32, Int32, Int32);
// ---
// aPoint is type Point.
// aPoint.x = 4
// aPoint.y = 5
// aPoint.z = 6
}
}
Imports System.Threading
Imports System.Reflection
Imports System.Reflection.Emit
_
Class TestCtorBuilder
Public Shared Function DynamicPointTypeGen() As Type
Dim pointType As Type = Nothing
Dim ctorParams() As Type = {GetType(Integer), GetType(Integer), GetType(Integer)}
Dim myDomain As AppDomain = Thread.GetDomain()
Dim myAsmName As New AssemblyName()
myAsmName.Name = "MyDynamicAssembly"
Dim myAsmBuilder As AssemblyBuilder = myDomain.DefineDynamicAssembly(myAsmName, AssemblyBuilderAccess.RunAndSave)
Dim pointModule As ModuleBuilder = myAsmBuilder.DefineDynamicModule("PointModule", "Point.dll")
Dim pointTypeBld As TypeBuilder = pointModule.DefineType("Point", TypeAttributes.Public)
Dim xField As FieldBuilder = pointTypeBld.DefineField("x", GetType(Integer), FieldAttributes.Public)
Dim yField As FieldBuilder = pointTypeBld.DefineField("y", GetType(Integer), FieldAttributes.Public)
Dim zField As FieldBuilder = pointTypeBld.DefineField("z", GetType(Integer), FieldAttributes.Public)
Dim objType As Type = Type.GetType("System.Object")
Dim objCtor As ConstructorInfo = objType.GetConstructor(New Type() {})
Dim pointCtor As ConstructorBuilder = pointTypeBld.DefineConstructor(MethodAttributes.Public, CallingConventions.Standard, ctorParams)
Dim ctorIL As ILGenerator = pointCtor.GetILGenerator()
' NOTE: ldarg.0 holds the "this" reference - ldarg.1, ldarg.2, and ldarg.3
' hold the actual passed parameters. ldarg.0 is used by instance methods
' to hold a reference to the current calling object instance. Static methods
' do not use arg.0, since they are not instantiated and hence no reference
' is needed to distinguish them.
ctorIL.Emit(OpCodes.Ldarg_0)
' Here, we wish to create an instance of System.Object by invoking its
' constructor, as specified above.
ctorIL.Emit(OpCodes.Call, objCtor)
' Now, we'll load the current instance ref in arg 0, along
' with the value of parameter "x" stored in arg 1, into stfld.
ctorIL.Emit(OpCodes.Ldarg_0)
ctorIL.Emit(OpCodes.Ldarg_1)
ctorIL.Emit(OpCodes.Stfld, xField)
' Now, we store arg 2 "y" in the current instance with stfld.
ctorIL.Emit(OpCodes.Ldarg_0)
ctorIL.Emit(OpCodes.Ldarg_2)
ctorIL.Emit(OpCodes.Stfld, yField)
' Last of all, arg 3 "z" gets stored in the current instance.
ctorIL.Emit(OpCodes.Ldarg_0)
ctorIL.Emit(OpCodes.Ldarg_3)
ctorIL.Emit(OpCodes.Stfld, zField)
' Our work complete, we return.
ctorIL.Emit(OpCodes.Ret)
' Now, let's create three very simple methods so we can see our fields.
Dim mthdNames() As String = {"GetX", "GetY", "GetZ"}
Dim mthdName As String
For Each mthdName In mthdNames
Dim getFieldMthd As MethodBuilder = pointTypeBld.DefineMethod(mthdName, MethodAttributes.Public, GetType(Integer), Nothing)
Dim mthdIL As ILGenerator = getFieldMthd.GetILGenerator()
mthdIL.Emit(OpCodes.Ldarg_0)
Select Case mthdName
Case "GetX"
mthdIL.Emit(OpCodes.Ldfld, xField)
Case "GetY"
mthdIL.Emit(OpCodes.Ldfld, yField)
Case "GetZ"
mthdIL.Emit(OpCodes.Ldfld, zField)
End Select
mthdIL.Emit(OpCodes.Ret)
Next mthdName
' Finally, we create the type.
pointType = pointTypeBld.CreateType()
' Let's save it, just for posterity.
myAsmBuilder.Save("Point.dll")
Return pointType
End Function 'DynamicPointTypeGen
Public Shared Sub Main()
Dim myDynamicType As Type = Nothing
Dim aPoint As Object = Nothing
Dim aPtypes() As Type = {GetType(Integer), GetType(Integer), GetType(Integer)}
Dim aPargs() As Object = {4, 5, 6}
' Call the method to build our dynamic class.
myDynamicType = DynamicPointTypeGen()
Console.WriteLine("Some information about my new Type '{0}':", myDynamicType.FullName)
Console.WriteLine("Assembly: '{0}'", myDynamicType.Assembly)
Console.WriteLine("Attributes: '{0}'", myDynamicType.Attributes)
Console.WriteLine("Module: '{0}'", myDynamicType.Module)
Console.WriteLine("Members: ")
Dim member As MemberInfo
For Each member In myDynamicType.GetMembers()
Console.WriteLine("-- {0} {1};", member.MemberType, member.Name)
Next member
Console.WriteLine("---")
' Let's take a look at the constructor we created.
Dim myDTctor As ConstructorInfo = myDynamicType.GetConstructor(aPtypes)
Console.WriteLine("Constructor: {0};", myDTctor.ToString())
Console.WriteLine("---")
' Now, we get to use our dynamically-created class by invoking the constructor.
aPoint = myDTctor.Invoke(aPargs)
Console.WriteLine("aPoint is type {0}.", aPoint.GetType())
' Finally, let's reflect on the instance of our new type - aPoint - and
' make sure everything proceeded according to plan.
Console.WriteLine("aPoint.x = {0}", myDynamicType.InvokeMember("GetX", BindingFlags.InvokeMethod, Nothing, aPoint, New Object() {}))
Console.WriteLine("aPoint.y = {0}", myDynamicType.InvokeMember("GetY", BindingFlags.InvokeMethod, Nothing, aPoint, New Object() {}))
Console.WriteLine("aPoint.z = {0}", myDynamicType.InvokeMember("GetZ", BindingFlags.InvokeMethod, Nothing, aPoint, New Object() {}))
End Sub
End Class
' +++ OUTPUT +++
' Some information about my new Type 'Point':
' Assembly: 'MyDynamicAssembly, Version=0.0.0.0'
' Attributes: 'AutoLayout, AnsiClass, NotPublic, Public'
' Module: 'PointModule'
' Members:
' -- Field x;
' -- Field y;
' -- Field z;
' -- Method GetHashCode;
' -- Method Equals;
' -- Method ToString;
' -- Method GetType;
' -- Constructor .ctor;
' ---
' Constructor: Void .ctor(Int32, Int32, Int32);
' ---
' aPoint is type Point.
' aPoint.x = 4
' aPoint.y = 5
' aPoint.z = 6
Açıklamalar
ConstructorBuilder ad, öznitelikler, imza ve oluşturucu gövdesi dahil olmak üzere bir oluşturucuyu Microsoft ara dilinde (MSIL) tam olarak açıklamak için kullanılır. Çalışma zamanında sınıf oluşturmak için sınıfıyla TypeBuilder birlikte kullanılır. örneğini almak için çağrısında DefineConstructor bulunur ConstructorBuilder.
Dinamik türünüz için bir oluşturucu tanımlamazsanız, otomatik olarak parametresiz bir oluşturucu sağlanır ve temel sınıfın parametresiz oluşturucusunu çağırır.
Dinamik türünüz için bir oluşturucu tanımlamak için kullanırsanız ConstructorBuilder , parametresiz bir oluşturucu sağlanmaz. Tanımladığınız oluşturucuya ek olarak parametresiz bir oluşturucu sağlamak için aşağıdaki seçeneklere sahipsiniz:
Yalnızca temel sınıfın parametresiz oluşturucuyu çağıran parametresiz bir oluşturucu istiyorsanız, yöntemini kullanarak TypeBuilder.DefineDefaultConstructor bir tane oluşturabilir (ve isteğe bağlı olarak buna erişimi kısıtlayabilirsiniz). Bu parametresiz oluşturucu için bir uygulama sağlamayın. Bunu yaparsanız, oluşturucuyu kullanmaya çalıştığınızda bir özel durum oluşturulur. Yöntemi çağrıldığında TypeBuilder.CreateType hiçbir özel durum oluşturulur.
Yalnızca temel sınıfın parametresiz oluşturucusunun çağrılmasından daha fazlasını yapan veya temel sınıfın başka bir oluşturucusunu çağıran veya tamamen başka bir şey yapan parametresiz bir oluşturucu istiyorsanız, bir ConstructorBuilderoluşturmak ve kendi uygulamanızı sağlamak için yöntemini kullanmanız TypeBuilder.DefineConstructor gerekir.
Oluşturucular
ConstructorBuilder() |
ConstructorBuilder sınıfının yeni bir örneğini başlatır. |
Özellikler
Attributes |
Bu oluşturucunun özniteliklerini alır. |
CallingConvention |
Bildirim türünün genel olup olmadığına bağlı bir CallingConventions değer alır. |
CallingConvention |
Bu yöntem için çağırma kurallarını belirten bir değer alır. (Devralındığı yer: MethodBase) |
ContainsGenericParameters |
Genel yöntemin atanmamış genel tür parametreleri içerip içermediğini belirten bir değer alır. (Devralındığı yer: MethodBase) |
CustomAttributes |
Bu üyenin özel özniteliklerini içeren bir koleksiyon alır. (Devralındığı yer: MemberInfo) |
DeclaringType |
Bu üyeyi Type bildiren türün nesnesine başvuru alır. |
InitLocals |
Bu oluşturucudaki yerel değişkenlerin sıfır başlatılıp başlatılmayacağını alır veya ayarlar. |
InitLocalsCore |
Türetilmiş bir sınıfta geçersiz kılındığında, bu oluşturucudaki yerel değişkenlerin sıfır başlatılıp başlatılmayacağını belirten bir değer alır veya ayarlar. |
IsAbstract |
Yöntemin soyut olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsAssembly |
Bu yöntemin veya oluşturucunun olası görünürlüğünün ile Assemblyaçıklanıp açıklanmadığını belirten bir değer alır; başka bir deyişle, yöntem veya oluşturucu aynı derlemedeki diğer türler için en fazla görünürdür ve derleme dışındaki türetilmiş türler tarafından görünmez. (Devralındığı yer: MethodBase) |
IsCollectible |
Bu MemberInfo nesnenin toplanabilir AssemblyLoadContextbir derlemenin parçası olup olmadığını gösteren bir değer alır. (Devralındığı yer: MemberInfo) |
IsConstructedGenericMethod |
Dinamik bir sınıfın oluşturucusunun tanımlar ve temsil eder. (Devralındığı yer: MethodBase) |
IsConstructor |
Yöntemin bir oluşturucu olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsFamily |
Bu yöntemin veya oluşturucunun görünürlüğünün tarafından Familyaçıklanıp tanımlanmadığını belirten bir değer alır; başka bir ifadeyle, yöntem veya oluşturucu yalnızca kendi sınıfı ve türetilmiş sınıfları içinde görünür. (Devralındığı yer: MethodBase) |
IsFamilyAndAssembly |
Bu yöntemin veya oluşturucunun görünürlüğünün tarafından FamANDAssemaçıklanıp tanımlanmadığını belirten bir değer alır; başka bir ifadeyle, yöntem veya oluşturucu türetilmiş sınıflar tarafından çağrılabilir, ancak yalnızca aynı derlemedeyseler. (Devralındığı yer: MethodBase) |
IsFamilyOrAssembly |
Bu yöntemin veya oluşturucunun olası görünürlüğünün ile FamORAssemaçıklanıp açıklanmadığını belirten bir değer alır; başka bir ifadeyle, yöntem veya oluşturucu nerede olurlarsa olsunlar türetilmiş sınıflar tarafından ve aynı derlemedeki sınıflar tarafından çağrılabilir. (Devralındığı yer: MethodBase) |
IsFinal |
Bu yöntemin |
IsGenericMethod |
Yöntemin genel olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsGenericMethodDefinition |
Yöntemin genel bir yöntem tanımı olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsHideBySig |
Türetilmiş sınıfta yalnızca aynı türdeki aynı imzaya sahip bir üyenin gizlenip gizlenmediğini belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsPrivate |
Bu üyenin özel olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsPublic |
Bunun genel bir yöntem olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsSecurityCritical |
Geçerli yöntem veya oluşturucunun geçerli güven düzeyinde güvenlik açısından kritik veya güvenlik açısından güvenli-kritik olduğunu belirten bir değer alır ve bu nedenle kritik işlemler gerçekleştirebilir. (Devralındığı yer: MethodBase) |
IsSecuritySafeCritical |
Geçerli yöntemin veya oluşturucunun geçerli güven düzeyinde güvenlik açısından güvenli-kritik olup olmadığını belirten bir değer alır; yani, kritik işlemler gerçekleştirip gerçekleştiremeyeceğini ve saydam kodla erişilip erişilemeyeceğini gösterir. (Devralındığı yer: MethodBase) |
IsSecurityTransparent |
Geçerli yöntemin veya oluşturucunun geçerli güven düzeyinde saydam olup olmadığını belirten bir değer alır ve bu nedenle kritik işlemler gerçekleştiremez. (Devralındığı yer: MethodBase) |
IsSpecialName |
Bu yöntemin özel bir ada sahip olup olmadığını belirten bir değer alır. (Devralındığı yer: MethodBase) |
IsStatic |
yönteminin |
IsVirtual |
yönteminin |
MemberType |
MemberTypes Bu üyenin bir oluşturucu olduğunu belirten bir değer alır. (Devralındığı yer: ConstructorInfo) |
MetadataToken |
Meta verilerdeki geçerli dinamik modülü tanımlayan bir belirteç alır. |
MetadataToken |
Meta veri öğesini tanımlayan bir değer alır. (Devralındığı yer: MemberInfo) |
MethodHandle |
yöntemi için iç tanıtıcıyı alır. Temel alınan meta veri tanıtıcısına erişmek için bu tanıtıcıyı kullanın. |
MethodHandle |
Bir yöntemin iç meta veri gösteriminin tanıtıcısını alır. (Devralındığı yer: MethodBase) |
MethodImplementationFlags |
Yöntem uygulamasının MethodImplAttributes özniteliklerini belirten bayrakları alır. |
MethodImplementationFlags |
MethodImplAttributes Bir yöntem uygulamasının özniteliklerini belirten bayrakları alır. (Devralındığı yer: MethodBase) |
Module |
Bu oluşturucunun tanımlandığı dinamik modülü alır. |
Module |
Geçerli MemberInfo tarafından temsil edilen üyeyi bildiren türün tanımlandığı modülü alır. (Devralındığı yer: MemberInfo) |
Name |
Bu oluşturucunun adını alır. |
ReflectedType |
Bu nesnenin Type alındığı nesneye bir başvuru tutar. |
ReflectedType |
bu örneğini |
ReturnType |
Geçersiz.
alır |
Signature |
Alanın imzasını dize biçiminde alır. |
Yöntemler
AddDeclarativeSecurity(SecurityAction, PermissionSet) |
Bu oluşturucuya bildirim temelli güvenlik ekler. |
DefineParameter(Int32, ParameterAttributes, String) |
Bu oluşturucunun bir parametresini tanımlar. |
DefineParameterCore(Int32, ParameterAttributes, String) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu oluşturucunun bir parametresini tanımlar. |
Equals(Object) |
Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür. (Devralındığı yer: ConstructorInfo) |
GetCustomAttributes(Boolean) |
Bu oluşturucu için tanımlanan tüm özel öznitelikleri döndürür. |
GetCustomAttributes(Boolean) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu üyeye uygulanan tüm özel özniteliklerden oluşan bir dizi döndürür. (Devralındığı yer: MemberInfo) |
GetCustomAttributes(Type, Boolean) |
Verilen tür tarafından tanımlanan özel öznitelikleri döndürür. |
GetCustomAttributes(Type, Boolean) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu üyeye uygulanan ve tarafından Typetanımlanan bir dizi özel öznitelik döndürür. (Devralındığı yer: MemberInfo) |
GetCustomAttributesData() |
Hedef üyeye CustomAttributeData uygulanmış özniteliklerle ilgili verileri temsil eden nesnelerin listesini döndürür. (Devralındığı yer: MemberInfo) |
GetGenericArguments() |
Genel bir yöntemin Type tür bağımsız değişkenlerini veya genel bir yöntem tanımının tür parametrelerini temsil eden bir nesne dizisi döndürür. (Devralındığı yer: MethodBase) |
GetHashCode() |
Bu örneğe ilişkin karma kodu döndürür. (Devralındığı yer: ConstructorInfo) |
GetILGenerator() |
Bu oluşturucu için bir ILGenerator alır. |
GetILGenerator(Int32) |
Bu oluşturucu için bir ILGenerator yöntem gövdesi oluşturmak için kullanılabilecek, belirtilen MSIL akış boyutuna sahip bir nesnesi alır. |
GetILGeneratorCore(Int32) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu oluşturucu için bir yöntem gövdesi yaymak için kullanılabilecek bir alır ILGenerator . |
GetMethodBody() |
Türetilmiş bir sınıfta geçersiz kılındığında, MSIL akışına, yerel değişkenlere ve geçerli yöntem için özel durumlara erişim sağlayan bir MethodBody nesnesi alır. (Devralındığı yer: MethodBase) |
GetMethodImplementationFlags() |
Bu oluşturucu için yöntem uygulama bayraklarını döndürür. |
GetMethodImplementationFlags() |
Türetilmiş bir sınıfta geçersiz kılındığında bayrakları döndürür MethodImplAttributes . (Devralındığı yer: MethodBase) |
GetModule() |
Bu oluşturucuyu içeren modüle bir başvuru döndürür. |
GetParameters() |
Bu oluşturucunun parametrelerini döndürür. |
GetToken() |
MethodToken Bu oluşturucu için belirteci temsil eden öğesini döndürür. |
GetType() |
Sınıf oluşturucunun özniteliklerini bulur ve oluşturucu meta verilerine erişim sağlar. (Devralındığı yer: ConstructorInfo) |
HasSameMetadataDefinitionAs(MemberInfo) |
Dinamik bir sınıfın oluşturucusunun tanımlar ve temsil eder. (Devralındığı yer: MemberInfo) |
Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Verilen nesnede bu örnek tarafından temsil edilen oluşturucuyu dinamik olarak çağırır, belirtilen parametreler boyunca ve verilen bağlayıcının kısıtlamaları altında geçirir. |
Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Türetilmiş bir sınıfta uygulandığında, belirtilen bağımsız değişkenlerle bu tarafından |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Bu örnekte belirtilen bağımsız değişkenlerle yansıtılan oluşturucuyu, belirtilen öğesinin kısıtlamaları |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Türetilmiş bir sınıfta geçersiz kılındığında, yansıtılan yöntemi veya oluşturucuyu verilen parametrelerle çağırır. (Devralındığı yer: MethodBase) |
Invoke(Object, Object[]) |
Belirtilen parametreleri kullanarak geçerli örnek tarafından temsil edilen yöntemi veya oluşturucuyu çağırır. (Devralındığı yer: MethodBase) |
Invoke(Object[]) |
Belirtilen parametreleri içeren örnek tarafından yansıtılan oluşturucuyu çağırır ve yaygın olarak kullanılmayan parametreler için varsayılan değerler sağlar. (Devralındığı yer: ConstructorInfo) |
IsDefined(Type, Boolean) |
Belirtilen özel öznitelik türünün tanımlandığını denetler. |
IsDefined(Type, Boolean) |
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen türde veya türetilmiş türlerinden bir veya daha fazla özniteliğin bu üyeye uygulanıp uygulanmadığını gösterir. (Devralındığı yer: MemberInfo) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
SetCustomAttribute(ConstructorInfo, Byte[]) |
Belirtilen özel öznitelik blobu kullanarak özel bir öznitelik ayarlayın. |
SetCustomAttribute(CustomAttributeBuilder) |
Özel öznitelik oluşturucu kullanarak özel bir öznitelik ayarlayın. |
SetCustomAttributeCore(ConstructorInfo, ReadOnlySpan<Byte>) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu oluşturucuda özel bir öznitelik ayarlar. |
SetImplementationFlags(MethodImplAttributes) |
Bu oluşturucu için yöntem uygulama bayraklarını ayarlar. |
SetImplementationFlagsCore(MethodImplAttributes) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu oluşturucu için yöntem uygulama bayraklarını ayarlar. |
SetMethodBody(Byte[], Int32, Byte[], IEnumerable<ExceptionHandler>, IEnumerable<Int32>) |
Microsoft ara dili (MSIL) yönergelerinin belirtilen bayt dizisini kullanarak oluşturucunun gövdesini oluşturur. |
SetSymCustomAttribute(String, Byte[]) |
Bu oluşturucuyu sembolik bilgilerle ilişkili özel özniteliğini ayarlar. |
ToString() |
Bu ConstructorBuilder örneği olarak Stringdöndürür. |
Belirtik Arabirim Kullanımları
_ConstructorBuilder.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. |
_ConstructorBuilder.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. |
_ConstructorBuilder.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). |
_ConstructorBuilder.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. |
_ConstructorInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.GetType() |
Türü temsil eden ConstructorInfo bir Type nesne alır. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.Invoke_2(Object, BindingFlags, Binder, Object[], CultureInfo) |
YÖNTEMIne sürümden bağımsız erişime Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) sahip COM nesneleri sağlar. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.Invoke_3(Object, Object[]) |
YÖNTEMIne sürümden bağımsız erişime Invoke(Object, Object[]) sahip COM nesneleri sağlar. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.Invoke_4(BindingFlags, Binder, Object[], CultureInfo) |
YÖNTEMIne sürümden bağımsız erişime Invoke(BindingFlags, Binder, Object[], CultureInfo) sahip COM nesneleri sağlar. (Devralındığı yer: ConstructorInfo) |
_ConstructorInfo.Invoke_5(Object[]) |
YÖNTEMIne sürümden bağımsız erişime Invoke(Object[]) sahip COM nesneleri sağlar. (Devralındığı yer: ConstructorInfo) |
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. (Devralındığı yer: MemberInfo) |
_MemberInfo.GetType() |
sınıfını MemberInfo temsil eden bir Type nesne alır. (Devralındığı yer: MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. (Devralındığı yer: MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). (Devralındığı yer: MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. (Devralındığı yer: MemberInfo) |
_MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. (Devralındığı yer: MethodBase) |
_MethodBase.GetType() |
Bu üyenin açıklaması için bkz GetType(). . (Devralındığı yer: MethodBase) |
_MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. (Devralındığı yer: MethodBase) |
_MethodBase.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). (Devralındığı yer: MethodBase) |
_MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. (Devralındığı yer: MethodBase) |
_MethodBase.IsAbstract |
Bu üyenin açıklaması için bkz IsAbstract. . (Devralındığı yer: MethodBase) |
_MethodBase.IsAssembly |
Bu üyenin açıklaması için bkz IsAssembly. . (Devralındığı yer: MethodBase) |
_MethodBase.IsConstructor |
Bu üyenin açıklaması için bkz IsConstructor. . (Devralındığı yer: MethodBase) |
_MethodBase.IsFamily |
Bu üyenin açıklaması için bkz IsFamily. . (Devralındığı yer: MethodBase) |
_MethodBase.IsFamilyAndAssembly |
Bu üyenin açıklaması için bkz IsFamilyAndAssembly. . (Devralındığı yer: MethodBase) |
_MethodBase.IsFamilyOrAssembly |
Bu üyenin açıklaması için bkz IsFamilyOrAssembly. . (Devralındığı yer: MethodBase) |
_MethodBase.IsFinal |
Bu üyenin açıklaması için bkz IsFinal. . (Devralındığı yer: MethodBase) |
_MethodBase.IsHideBySig |
Bu üyenin açıklaması için bkz IsHideBySig. . (Devralındığı yer: MethodBase) |
_MethodBase.IsPrivate |
Bu üyenin açıklaması için bkz IsPrivate. . (Devralındığı yer: MethodBase) |
_MethodBase.IsPublic |
Bu üyenin açıklaması için bkz IsPublic. . (Devralındığı yer: MethodBase) |
_MethodBase.IsSpecialName |
Bu üyenin açıklaması için bkz IsSpecialName. . (Devralındığı yer: MethodBase) |
_MethodBase.IsStatic |
Bu üyenin açıklaması için bkz IsStatic. . (Devralındığı yer: MethodBase) |
_MethodBase.IsVirtual |
Bu üyenin açıklaması için bkz IsVirtual. . (Devralındığı yer: MethodBase) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Adlandırılmış öznitelikler hariç, bu üyede tanımlanan tüm özel özniteliklerin dizisini veya özel öznitelikler yoksa boş bir diziyi döndürür. (Devralındığı yer: MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Bu üyede tanımlanan, türe göre tanımlanan bir özel öznitelik dizisi veya bu türde özel öznitelikler yoksa boş bir dizi döndürür. (Devralındığı yer: MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Bir veya daha fazla örneğinin bu üyede tanımlanıp tanımlanmadığını |
Uzantı Metotları
GetCustomAttribute(MemberInfo, Type) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
GetCustomAttribute<T>(MemberInfo) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
GetCustomAttributes(MemberInfo) |
Belirtilen üyeye uygulanan özel öznitelikler koleksiyonunu alır. |
GetCustomAttributes(MemberInfo, Boolean) |
Belirtilen üyeye uygulanan özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin atalarını inceler. |
GetCustomAttributes(MemberInfo, Type) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
GetCustomAttributes<T>(MemberInfo) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
IsDefined(MemberInfo, Type) |
Belirtilen türde özel özniteliklerin belirtilen üyeye uygulanıp uygulanmadığını gösterir. |
IsDefined(MemberInfo, Type, Boolean) |
Belirtilen türlerdeki özel özniteliklerin belirtilen üyeye uygulanıp uygulanmadığını ve isteğe bağlı olarak, üstlerine uygulanıp uygulanmadığını gösterir. |
GetMetadataToken(MemberInfo) |
Varsa, verilen üye için bir meta veri belirteci alır. |
HasMetadataToken(MemberInfo) |
Belirtilen üye için bir meta veri belirtecinin kullanılabilir olup olmadığını gösteren bir değer döndürür. |