ConstructorBuilder Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Dinamikus osztály konstruktorát definiálja és jelöli.
public ref class ConstructorBuilder abstract : System::Reflection::ConstructorInfo
public ref class ConstructorBuilder sealed : System::Reflection::ConstructorInfo
public ref class ConstructorBuilder sealed : System::Reflection::ConstructorInfo, System::Runtime::InteropServices::_ConstructorBuilder
public abstract class ConstructorBuilder : System.Reflection.ConstructorInfo
public sealed 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 MustInherit Class ConstructorBuilder
Inherits ConstructorInfo
Public NotInheritable Class ConstructorBuilder
Inherits ConstructorInfo
Public NotInheritable Class ConstructorBuilder
Inherits ConstructorInfo
Implements _ConstructorBuilder
- Öröklődés
- Attribútumok
- Megvalósítás
Példák
Az alábbi kódminta a környezetfüggő használatot szemlélteti ConstructorBuilder.
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
Megjegyzések
ConstructorBuilder a konstruktorok teljes leírására szolgál Microsoft köztes nyelven (MSIL), beleértve a nevet, az attribútumokat, az aláírást és a konstruktor törzsét. A rendszer az osztálysal együtt használja az TypeBuilder osztályok futásidőben történő létrehozására. Hívás DefineConstructor a példány lekéréséhez ConstructorBuilder.
Ha nem definiál konstruktort a dinamikus típushoz, a rendszer automatikusan megadja a paraméter nélküli konstruktort, és meghívja az alaposztály paraméter nélküli konstruktorát.
Ha konstruktort határoz ConstructorBuilder meg a dinamikus típushoz, a rendszer nem biztosít paraméter nélküli konstruktort. A definiált konstruktoron kívül az alábbi lehetőségek állnak rendelkezésre a paraméter nélküli konstruktor megadására:
Ha olyan paraméter nélküli konstruktort szeretne, amely egyszerűen meghívja az alaposztály paraméter nélküli konstruktorát, a metódussal TypeBuilder.DefineDefaultConstructor létrehozhat egyet (és opcionálisan korlátozhatja a hozzáférését). Ne adjon implementációt ehhez a paraméter nélküli konstruktorhoz. Ha így tesz, a rendszer kivételt jelez a konstruktor használatakor. A metódus meghívásakor TypeBuilder.CreateType a rendszer nem ad kivételt.
Ha olyan paraméter nélküli konstruktort szeretne, amely nem csupán az alaposztály paraméter nélküli konstruktorát hívja meg, vagy az alaposztály egy másik konstruktorát hívja meg, vagy teljesen mást csinál, akkor a TypeBuilder.DefineConstructor metódussal létre kell hoznia egy ConstructorBuilder, és saját implementációt kell biztosítania.
Konstruktorok
| Name | Description |
|---|---|
| ConstructorBuilder() |
Inicializálja a ConstructorBuilder osztály új példányát. |
Tulajdonságok
| Name | Description |
|---|---|
| Attributes |
Lekéri a konstruktor attribútumait. |
| CallingConvention |
CallingConventions Olyan értéket kap, amely attól függ, hogy a deklarálási típus általános-e. |
| CallingConvention |
Lekéri a metódus hívási konvencióit jelző értéket. (Öröklődés forrása MethodBase) |
| ContainsGenericParameters |
Beolvas egy értéket, amely jelzi, hogy az általános metódus nem hozzárendelt általános típusparamétereket tartalmaz-e. (Öröklődés forrása MethodBase) |
| CustomAttributes |
Lekéri a tag egyéni attribútumait tartalmazó gyűjteményt. (Öröklődés forrása MemberInfo) |
| DeclaringType |
Lekéri a Type tagot deklaráló típus objektumára mutató hivatkozást. |
| InitLocals |
Lekérdezi vagy beállítja, hogy a konstruktor helyi változóinak inicializálva kell-e lenniük. |
| InitLocalsCore |
Ha egy származtatott osztályban felül van bírálva, olyan értéket kap vagy állít be, amely jelzi, hogy a konstruktor helyi változóinak nullával kell-e inicializálva lenniük. |
| IsAbstract |
Egy értéket kap, amely jelzi, hogy a metódus absztrakt-e. (Öröklődés forrása MethodBase) |
| IsAssembly |
Olyan értéket kap, amely jelzi, hogy a metódus vagy a konstruktor lehetséges láthatóságát az határozza-e meg Assembly, hogy a metódus vagy a konstruktor legfeljebb ugyanazon szerelvény más típusai számára látható, és nem látható a szerelvényen kívüli származtatott típusok számára. (Öröklődés forrása MethodBase) |
| IsCollectible |
Olyan értéket kap, amely jelzi, hogy ez az MemberInfo objektum egy vagy több gyűjteményben tárolt szerelvényre hivatkozik-e AssemblyLoadContext. (Öröklődés forrása MemberInfo) |
| IsConstructedGenericMethod |
Dinamikus osztály konstruktorát definiálja és jelöli. (Öröklődés forrása MethodBase) |
| IsConstructor |
Egy értéket kap, amely jelzi, hogy a metódus konstruktor-e. (Öröklődés forrása MethodBase) |
| IsFamily |
Egy értéket kap, amely jelzi, hogy a metódus vagy a konstruktor láthatóságát a rendszer leírja-e Family; vagyis a metódus vagy a konstruktor csak az osztályán belül és a származtatott osztályokban látható. (Öröklődés forrása MethodBase) |
| IsFamilyAndAssembly |
Olyan értéket kap, amely jelzi, hogy a metódus vagy a konstruktor láthatóságát a rendszer leírja-e FamANDAssem; vagyis a metódust vagy a konstruktort származtatott osztályok hívhatják meg, de csak akkor, ha ugyanabban a szerelvényben vannak. (Öröklődés forrása MethodBase) |
| IsFamilyOrAssembly |
Egy értéket kap, amely jelzi, hogy a metódus vagy konstruktor lehetséges láthatóságát a rendszer leírja-e FamORAssem; vagyis a metódust vagy konstruktort származtatott osztályok hívhatják meg, bárhol is vannak, és az ugyanabban a szerelvényben lévő osztályok szerint. (Öröklődés forrása MethodBase) |
| IsFinal |
Egy értéket kap, amely jelzi, hogy ez a metódus . |
| IsGenericMethod |
Egy értéket kap, amely jelzi, hogy a metódus általános-e. (Öröklődés forrása MethodBase) |
| IsGenericMethodDefinition |
Beolvas egy értéket, amely jelzi, hogy a metódus általános metódusdefiníció-e. (Öröklődés forrása MethodBase) |
| IsHideBySig |
Egy értéket kap, amely azt jelzi, hogy csak egy azonos típusú, pontosan azonos aláírással rendelkező tag van-e elrejtve a származtatott osztályban. (Öröklődés forrása MethodBase) |
| IsPrivate |
Beolvas egy értéket, amely jelzi, hogy ez a tag privát-e. (Öröklődés forrása MethodBase) |
| IsPublic |
Beolvas egy értéket, amely jelzi, hogy ez nyilvános metódus-e. (Öröklődés forrása MethodBase) |
| IsSecurityCritical |
Olyan értéket kap, amely jelzi, hogy az aktuális metódus vagy konstruktor biztonsági szempontból kritikus vagy biztonsági szempontból biztonságos-kritikus a jelenlegi megbízhatósági szinten, ezért kritikus műveleteket hajthat végre. (Öröklődés forrása MethodBase) |
| IsSecuritySafeCritical |
Olyan értéket kap, amely jelzi, hogy az aktuális metódus vagy konstruktor biztonsági szempontból biztonságos-e az aktuális megbízhatósági szinten; vagyis hogy képes-e kritikus műveleteket végrehajtani, és transzparens kóddal elérhető-e. (Öröklődés forrása MethodBase) |
| IsSecurityTransparent |
Olyan értéket kap, amely jelzi, hogy az aktuális metódus vagy konstruktor transzparens-e az aktuális megbízhatósági szinten, ezért nem hajthat végre kritikus műveleteket. (Öröklődés forrása MethodBase) |
| IsSpecialName |
Egy értéket kap, amely jelzi, hogy a metódusnak van-e különleges neve. (Öröklődés forrása MethodBase) |
| IsStatic |
Egy értéket kap, amely jelzi, hogy a metódus . |
| IsVirtual |
Egy értéket kap, amely jelzi, hogy a metódus . |
| MemberType |
MemberTypes Olyan értéket kap, amely jelzi, hogy ez a tag konstruktor. (Öröklődés forrása ConstructorInfo) |
| MetadataToken |
Lekéri a metaadatokban az aktuális dinamikus modult azonosító jogkivonatot. |
| MetadataToken |
Egy metaadat-elemet azonosító értéket kap. (Öröklődés forrása MemberInfo) |
| MethodHandle |
Lekéri a metódus belső fogópontját. Ezzel a leíróval érheti el a mögöttes metaadat-leírót. |
| MethodImplementationFlags |
Lekéri a MethodImplAttributes metódus-implementáció attribútumait meghatározó jelzőket. |
| MethodImplementationFlags |
Lekéri a MethodImplAttributes metódus-implementáció attribútumait meghatározó jelzőket. (Öröklődés forrása MethodBase) |
| Module |
Lekéri azt a dinamikus modult, amelyben ez a konstruktor definiálva van. |
| Module |
Lekéri azt a modult, amelyben az aktuális MemberInfo által képviselt tagot deklaráló típus van definiálva. (Öröklődés forrása MemberInfo) |
| Name |
Lekéri a konstruktor nevét. |
| ReflectedType |
Arra az Type objektumra mutató hivatkozást tartalmaz, amelyből ezt az objektumot beszerezték. |
| ReturnType |
Elavult.
Lekéri |
| Signature |
Sztring formájában kéri le a mező aláírását. |
Metódusok
| Name | Description |
|---|---|
| AddDeclarativeSecurity(SecurityAction, PermissionSet) |
Deklaratív biztonságot ad a konstruktorhoz. |
| DefineParameter(Int32, ParameterAttributes, String) |
A konstruktor paraméterét határozza meg. |
| DefineParameterCore(Int32, ParameterAttributes, String) |
Ha egy származtatott osztályban felül van bírálva, a konstruktor paraméterét határozza meg. |
| Equals(Object) |
Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal. (Öröklődés forrása ConstructorInfo) |
| GetCustomAttributes(Boolean) |
A konstruktorhoz definiált összes egyéni attribútumot adja vissza. |
| GetCustomAttributes(Type, Boolean) |
Az adott típus által azonosított egyéni attribútumokat adja vissza. |
| GetCustomAttributesData() |
Visszaadja a CustomAttributeData céltagra alkalmazott attribútumok adatait képviselő objektumok listáját. (Öröklődés forrása MemberInfo) |
| GetGenericArguments() |
Dinamikus osztály konstruktorát definiálja és jelöli. (Öröklődés forrása ConstructorInfo) |
| GetHashCode() |
A példány kivonatkódját adja vissza. (Öröklődés forrása ConstructorInfo) |
| GetILGenerator() |
Kap egy ILGenerator ilyen konstruktort. |
| GetILGenerator(Int32) |
ILGenerator Lekéri a megadott MSIL-streammérettel rendelkező objektumot, amely a konstruktorhoz használható metódustörzs létrehozásához használható. |
| GetILGeneratorCore(Int32) |
Ha felül van bírálva egy származtatott osztályban, a ILGenerator konstruktor metódustörzsének kibocsátására használható lesz. |
| GetMethodBody() |
Ha egy származtatott osztályban felül van bírálva, egy MethodBody objektumot kap, amely hozzáférést biztosít az MSIL-adatfolyamhoz, a helyi változókhoz és az aktuális metódus kivételeihez. (Öröklődés forrása MethodBase) |
| GetMethodImplementationFlags() |
A konstruktor metódus-implementálási jelzőit adja vissza. |
| GetMethodImplementationFlags() |
Ha felül van bírálva egy származtatott osztályban, a MethodImplAttributes jelölőket adja vissza. (Öröklődés forrása MethodBase) |
| GetModule() |
A konstruktort tartalmazó modulra mutató hivatkozást ad vissza. |
| GetParameters() |
A konstruktor paramétereit adja vissza. |
| GetToken() |
A konstruktor MethodToken jogkivonatát adja vissza. |
| GetType() |
Felderíti az osztálykonstruktor attribútumait, és hozzáférést biztosít a konstruktor metaadataihoz. (Öröklődés forrása ConstructorInfo) |
| HasSameMetadataDefinitionAs(MemberInfo) |
Dinamikus osztály konstruktorát definiálja és jelöli. (Öröklődés forrása MemberInfo) |
| Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Dinamikusan meghívja a példány által képviselt konstruktort az adott objektumon, a megadott paraméterek mentén haladva, az adott kötés kényszerei szerint. |
| Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Dinamikusan meghívja a példány által tükrözött konstruktort a megadott argumentumokkal, a megadott |
| Invoke(Object, Object[]) |
Meghívja az aktuális példány által képviselt metódust vagy konstruktort a megadott paraméterekkel. (Öröklődés forrása MethodBase) |
| Invoke(Object[]) |
Meghívja a konstruktort, amely a megadott paraméterekkel rendelkezik, és alapértelmezett értékeket ad meg a gyakran nem használt paraméterekhez. (Öröklődés forrása ConstructorInfo) |
| IsDefined(Type, Boolean) |
Ellenőrzi, hogy a megadott egyéni attribútumtípus definiálva van-e. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| SetCustomAttribute(ConstructorInfo, Byte[]) |
Egyéni attribútum beállítása egy megadott egyéni attribútumblob használatával. |
| SetCustomAttribute(CustomAttributeBuilder) |
Egyéni attribútum beállítása egyéni attribútumszerkesztővel. |
| SetCustomAttributeCore(ConstructorInfo, ReadOnlySpan<Byte>) |
Ha egy származtatott osztályban felül van bírálva, beállít egy egyéni attribútumot ezen a konstruktoron. |
| SetImplementationFlags(MethodImplAttributes) |
Beállítja a konstruktor metódus-implementálási jelzőit. |
| SetImplementationFlagsCore(MethodImplAttributes) |
Ha egy származtatott osztályban felül van bírálva, beállítja a konstruktor metódus-implementálási jelzőit. |
| SetMethodBody(Byte[], Int32, Byte[], IEnumerable<ExceptionHandler>, IEnumerable<Int32>) |
A konstruktor törzsét Microsoft köztes nyelv (MSIL) utasításainak megadott bájttömbje segítségével hozza létre. |
| SetSymCustomAttribute(String, Byte[]) |
Beállítja ennek a konstruktornak a szimbolikus információkhoz társított egyéni attribútumát. |
| ToString() |
Ezt a ConstructorBuilder példányt Stringadja vissza . |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| _ConstructorBuilder.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Névkészletet képez le a küldési azonosítók megfelelő készletére. |
| _ConstructorBuilder.GetTypeInfo(UInt32, UInt32, IntPtr) |
Lekéri egy objektum típusadatait, amelyek aztán a felület típusadatainak lekérésére használhatók. |
| _ConstructorBuilder.GetTypeInfoCount(UInt32) |
Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1). |
| _ConstructorBuilder.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz. |
| _ConstructorInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Névkészletet képez le a küldési azonosítók megfelelő készletére. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.GetType() |
Lekéri a Type típust ConstructorInfo képviselő objektumot. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Lekéri egy objektum típusadatait, amelyek aztán a felület típusadatainak lekérésére használhatók. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.GetTypeInfoCount(UInt32) |
Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1). (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.Invoke_2(Object, BindingFlags, Binder, Object[], CultureInfo) |
A COM-objektumok verziófüggetlen hozzáférést biztosítanak a Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) metódushoz. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.Invoke_3(Object, Object[]) |
A COM-objektumok verziófüggetlen hozzáférést biztosítanak a Invoke(Object, Object[]) metódushoz. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.Invoke_4(BindingFlags, Binder, Object[], CultureInfo) |
A COM-objektumok verziófüggetlen hozzáférést biztosítanak a Invoke(BindingFlags, Binder, Object[], CultureInfo) metódushoz. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.Invoke_5(Object[]) |
A COM-objektumok verziófüggetlen hozzáférést biztosítanak a Invoke(Object[]) metódushoz. (Öröklődés forrása ConstructorInfo) |
| _ConstructorInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz. (Öröklődés forrása ConstructorInfo) |
| _MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Névkészletet képez le a küldési azonosítók megfelelő készletére. (Öröklődés forrása MemberInfo) |
| _MemberInfo.GetType() |
Type Lekéri az MemberInfo osztályt jelképező objektumot. (Öröklődés forrása MemberInfo) |
| _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Lekéri egy objektum típusadatait, amelyek aztán a felület típusadatainak lekérésére használhatók. (Öröklődés forrása MemberInfo) |
| _MemberInfo.GetTypeInfoCount(UInt32) |
Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1). (Öröklődés forrása MemberInfo) |
| _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz. (Öröklődés forrása MemberInfo) |
| _MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Névkészletet képez le a küldési azonosítók megfelelő készletére. (Öröklődés forrása MethodBase) |
| _MethodBase.GetType() |
Ennek a tagnak a leírását lásd GetType(): . (Öröklődés forrása MethodBase) |
| _MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr) |
Lekéri egy objektum típusadatait, amelyek aztán a felület típusadatainak lekérésére használhatók. (Öröklődés forrása MethodBase) |
| _MethodBase.GetTypeInfoCount(UInt32) |
Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1). (Öröklődés forrása MethodBase) |
| _MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz. (Öröklődés forrása MethodBase) |
| _MethodBase.IsAbstract |
Ennek a tagnak a leírását lásd IsAbstract: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsAssembly |
Ennek a tagnak a leírását lásd IsAssembly: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsConstructor |
Ennek a tagnak a leírását lásd IsConstructor: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsFamily |
Ennek a tagnak a leírását lásd IsFamily: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsFamilyAndAssembly |
Ennek a tagnak a leírását lásd IsFamilyAndAssembly: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsFamilyOrAssembly |
Ennek a tagnak a leírását lásd IsFamilyOrAssembly: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsFinal |
Ennek a tagnak a leírását lásd IsFinal: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsHideBySig |
Ennek a tagnak a leírását lásd IsHideBySig: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsPrivate |
Ennek a tagnak a leírását lásd IsPrivate: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsPublic |
Ennek a tagnak a leírását lásd IsPublic: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsSpecialName |
Ennek a tagnak a leírását lásd IsSpecialName: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsStatic |
Ennek a tagnak a leírását lásd IsStatic: . (Öröklődés forrása MethodBase) |
| _MethodBase.IsVirtual |
Ennek a tagnak a leírását lásd IsVirtual: . (Öröklődés forrása MethodBase) |
| ICustomAttributeProvider.GetCustomAttributes(Boolean) |
A tagon definiált összes egyéni attribútum tömbjének értékét adja vissza, kivéve az elnevezett attribútumokat, vagy üres tömböt, ha nincsenek egyéni attribútumok. (Öröklődés forrása MemberInfo) |
| ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
A tagon definiált egyéni attribútumokat tartalmazó tömböt ad vissza, amely típus szerint van azonosítva, vagy üres tömböt ad vissza, ha nincsenek ilyen típusú egyéni attribútumok. (Öröklődés forrása MemberInfo) |
| ICustomAttributeProvider.IsDefined(Type, Boolean) |
Azt jelzi, hogy egy vagy több példány |
Bővítő metódusok
| Name | Description |
|---|---|
| GetCustomAttribute(MemberInfo, Type, Boolean) |
Lekéri a megadott típusú egyéni attribútumot, amely egy adott tagra lesz alkalmazva, és opcionálisan az adott tag elődeit vizsgálja meg. |
| GetCustomAttribute(MemberInfo, Type) |
Egy megadott típusú egyéni attribútumot kér le, amelyet egy adott tagra alkalmaz. |
| GetCustomAttribute<T>(MemberInfo, Boolean) |
Lekéri a megadott típusú egyéni attribútumot, amely egy adott tagra lesz alkalmazva, és opcionálisan az adott tag elődeit vizsgálja meg. |
| GetCustomAttribute<T>(MemberInfo) |
Egy megadott típusú egyéni attribútumot kér le, amelyet egy adott tagra alkalmaz. |
| GetCustomAttributes(MemberInfo, Boolean) |
Lekéri a megadott tagra alkalmazott egyéni attribútumok gyűjteményét, és opcionálisan az adott tag őseit vizsgálja meg. |
| GetCustomAttributes(MemberInfo, Type, Boolean) |
Lekéri a megadott típusú egyéni attribútumok gyűjteményét, amelyek egy adott tagra vonatkoznak, és opcionálisan az adott tag elődeit is érintik. |
| GetCustomAttributes(MemberInfo, Type) |
Egy megadott típusú egyéni attribútumok gyűjteményét kéri le, amelyeket egy adott tagra alkalmaz. |
| GetCustomAttributes(MemberInfo) |
Egy adott tagra alkalmazott egyéni attribútumok gyűjteményét kéri le. |
| GetCustomAttributes<T>(MemberInfo, Boolean) |
Lekéri a megadott típusú egyéni attribútumok gyűjteményét, amelyek egy adott tagra vonatkoznak, és opcionálisan az adott tag elődeit is érintik. |
| GetCustomAttributes<T>(MemberInfo) |
Egy megadott típusú egyéni attribútumok gyűjteményét kéri le, amelyeket egy adott tagra alkalmaz. |
| GetMetadataToken(MemberInfo) |
Ha elérhető, lekéri az adott tag metaadat-jogkivonatát. |
| HasMetadataToken(MemberInfo) |
Olyan értéket ad vissza, amely jelzi, hogy elérhető-e metaadat-jogkivonat a megadott tag számára. |
| IsDefined(MemberInfo, Type, Boolean) |
Azt jelzi, hogy a megadott típusú egyéni attribútumok alkalmazhatók-e egy adott tagra, és szükség esetén alkalmazva vannak-e az elődökre. |
| IsDefined(MemberInfo, Type) |
Azt jelzi, hogy a megadott típusú egyéni attribútumok alkalmazhatók-e egy adott tagra. |