Teilen über


PropertyBuilder Klasse

Definition

Definiert die Eigenschaften für einen Typ.

public ref class PropertyBuilder sealed : System::Reflection::PropertyInfo
public ref class PropertyBuilder abstract : System::Reflection::PropertyInfo
public ref class PropertyBuilder sealed : System::Reflection::PropertyInfo, System::Runtime::InteropServices::_PropertyBuilder
public sealed class PropertyBuilder : System.Reflection.PropertyInfo
public abstract class PropertyBuilder : System.Reflection.PropertyInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
public sealed class PropertyBuilder : System.Reflection.PropertyInfo, System.Runtime.InteropServices._PropertyBuilder
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class PropertyBuilder : System.Reflection.PropertyInfo, System.Runtime.InteropServices._PropertyBuilder
type PropertyBuilder = class
    inherit PropertyInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
type PropertyBuilder = class
    inherit PropertyInfo
    interface _PropertyBuilder
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type PropertyBuilder = class
    inherit PropertyInfo
    interface _PropertyBuilder
Public NotInheritable Class PropertyBuilder
Inherits PropertyInfo
Public MustInherit Class PropertyBuilder
Inherits PropertyInfo
Public NotInheritable Class PropertyBuilder
Inherits PropertyInfo
Implements _PropertyBuilder
Vererbung
PropertyBuilder
Attribute
Implementiert

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Eigenschaften in einem dynamischen Typ mithilfe eines PropertyBuilder über abgerufenen TypeBuilder.DefineProperty zum Erstellen des Eigenschaftenframeworks und eines zugeordneten MethodBuilder zum Implementieren der IL-Logik innerhalb der Eigenschaft implementiert werden.

using namespace System;
using namespace System::Threading;
using namespace System::Reflection;
using namespace System::Reflection::Emit;
Type^ BuildDynamicTypeWithProperties()
{
   AppDomain^ myDomain = Thread::GetDomain();
   AssemblyName^ myAsmName = gcnew AssemblyName;
   myAsmName->Name = "MyDynamicAssembly";
   
   // To generate a persistable assembly, specify AssemblyBuilderAccess::RunAndSave.
   AssemblyBuilder^ myAsmBuilder = 
       myDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::RunAndSave );
   
   // Generate a persistable single-module assembly.
   ModuleBuilder^ myModBuilder = 
       myAsmBuilder->DefineDynamicModule( myAsmName->Name, myAsmName->Name + ".dll" );
   TypeBuilder^ myTypeBuilder = myModBuilder->DefineType( "CustomerData", TypeAttributes::Public );

   // Define a private field to hold the property value.
   FieldBuilder^ customerNameBldr = myTypeBuilder->DefineField( "customerName", String::typeid, FieldAttributes::Private );
   
   // The last argument of DefineProperty is an empty array of Type
   // objects, because the property has no parameters. (Alternatively,
   // you can specify a null value.)
   PropertyBuilder^ custNamePropBldr = 
       myTypeBuilder->DefineProperty( "CustomerName", PropertyAttributes::HasDefault, String::typeid, gcnew array<Type^>(0) );
   
   // The property set and property get methods require a special
   // set of attributes.
   MethodAttributes getSetAttr = 
       MethodAttributes::Public | MethodAttributes::SpecialName |
           MethodAttributes::HideBySig;

   // Define the "get" accessor method for CustomerName.
   MethodBuilder^ custNameGetPropMthdBldr = 
       myTypeBuilder->DefineMethod( "get_CustomerName", 
                                    getSetAttr,
                                    String::typeid, 
                                    Type::EmptyTypes );

   ILGenerator^ custNameGetIL = custNameGetPropMthdBldr->GetILGenerator();
   custNameGetIL->Emit( OpCodes::Ldarg_0 );
   custNameGetIL->Emit( OpCodes::Ldfld, customerNameBldr );
   custNameGetIL->Emit( OpCodes::Ret );
   
   // Define the "set" accessor method for CustomerName.
   array<Type^>^temp2 = {String::typeid};
   MethodBuilder^ custNameSetPropMthdBldr = 
       myTypeBuilder->DefineMethod( "set_CustomerName", 
                                    getSetAttr,
                                    nullptr, 
                                    temp2 );

   ILGenerator^ custNameSetIL = custNameSetPropMthdBldr->GetILGenerator();
   custNameSetIL->Emit( OpCodes::Ldarg_0 );
   custNameSetIL->Emit( OpCodes::Ldarg_1 );
   custNameSetIL->Emit( OpCodes::Stfld, customerNameBldr );
   custNameSetIL->Emit( OpCodes::Ret );
   
   // Last, we must map the two methods created above to our PropertyBuilder to
   // their corresponding behaviors, "get" and "set" respectively.
   custNamePropBldr->SetGetMethod( custNameGetPropMthdBldr );
   custNamePropBldr->SetSetMethod( custNameSetPropMthdBldr );

   Type^ retval = myTypeBuilder->CreateType();

   // Save the assembly so it can be examined with Ildasm.exe,
   // or referenced by a test program.
   myAsmBuilder->Save(myAsmName->Name + ".dll");
   return retval;
}

int main()
{
   Type^ custDataType = BuildDynamicTypeWithProperties();
   array<PropertyInfo^>^custDataPropInfo = custDataType->GetProperties();
   System::Collections::IEnumerator^ myEnum = custDataPropInfo->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      PropertyInfo^ pInfo = safe_cast<PropertyInfo^>(myEnum->Current);
      Console::WriteLine( "Property '{0}' created!", pInfo );
   }

   Console::WriteLine( "---" );
   
   // Note that when invoking a property, you need to use the proper BindingFlags -
   // BindingFlags::SetProperty when you invoke the "set" behavior, and
   // BindingFlags::GetProperty when you invoke the "get" behavior. Also note that
   // we invoke them based on the name we gave the property, as expected, and not
   // the name of the methods we bound to the specific property behaviors.
   Object^ custData = Activator::CreateInstance( custDataType );
   array<Object^>^temp3 = {"Joe User"};
   custDataType->InvokeMember( "CustomerName", BindingFlags::SetProperty, nullptr, custData, temp3 );
   Console::WriteLine( "The customerName field of instance custData has been set to '{0}'.", custDataType->InvokeMember( "CustomerName", BindingFlags::GetProperty, nullptr, custData, gcnew array<Object^>(0) ) );
}

// --- O U T P U T ---
// The output should be as follows:
// -------------------
// Property 'System.String CustomerName' created!
// ---
// The customerName field of instance custData has been set to 'Joe User'.
// -------------------
using System;
using System.Threading;
using System.Reflection;
using System.Reflection.Emit;

class PropertyBuilderDemo
{
   public static Type BuildDynamicTypeWithProperties()
   {
        AppDomain myDomain = Thread.GetDomain();
        AssemblyName myAsmName = new AssemblyName();
        myAsmName.Name = "MyDynamicAssembly";

        // To generate a persistable assembly, specify AssemblyBuilderAccess.RunAndSave.
        AssemblyBuilder myAsmBuilder = myDomain.DefineDynamicAssembly(myAsmName,
                                                        AssemblyBuilderAccess.RunAndSave);
        // Generate a persistable single-module assembly.
        ModuleBuilder myModBuilder =
            myAsmBuilder.DefineDynamicModule(myAsmName.Name, myAsmName.Name + ".dll");

        TypeBuilder myTypeBuilder = myModBuilder.DefineType("CustomerData",
                                                        TypeAttributes.Public);

        FieldBuilder customerNameBldr = myTypeBuilder.DefineField("customerName",
                                                        typeof(string),
                                                        FieldAttributes.Private);

        // The last argument of DefineProperty is null, because the
        // property has no parameters. (If you don't specify null, you must
        // specify an array of Type objects. For a parameterless property,
        // use an array with no elements: new Type[] {})
        PropertyBuilder custNamePropBldr = myTypeBuilder.DefineProperty("CustomerName",
                                                         PropertyAttributes.HasDefault,
                                                         typeof(string),
                                                         null);

        // The property set and property get methods require a special
        // set of attributes.
        MethodAttributes getSetAttr =
            MethodAttributes.Public | MethodAttributes.SpecialName |
                MethodAttributes.HideBySig;

        // Define the "get" accessor method for CustomerName.
        MethodBuilder custNameGetPropMthdBldr =
            myTypeBuilder.DefineMethod("get_CustomerName",
                                       getSetAttr,
                                       typeof(string),
                                       Type.EmptyTypes);

        ILGenerator custNameGetIL = custNameGetPropMthdBldr.GetILGenerator();

        custNameGetIL.Emit(OpCodes.Ldarg_0);
        custNameGetIL.Emit(OpCodes.Ldfld, customerNameBldr);
        custNameGetIL.Emit(OpCodes.Ret);

        // Define the "set" accessor method for CustomerName.
        MethodBuilder custNameSetPropMthdBldr =
            myTypeBuilder.DefineMethod("set_CustomerName",
                                       getSetAttr,
                                       null,
                                       new Type[] { typeof(string) });

        ILGenerator custNameSetIL = custNameSetPropMthdBldr.GetILGenerator();

        custNameSetIL.Emit(OpCodes.Ldarg_0);
        custNameSetIL.Emit(OpCodes.Ldarg_1);
        custNameSetIL.Emit(OpCodes.Stfld, customerNameBldr);
        custNameSetIL.Emit(OpCodes.Ret);

        // Last, we must map the two methods created above to our PropertyBuilder to
        // their corresponding behaviors, "get" and "set" respectively.
        custNamePropBldr.SetGetMethod(custNameGetPropMthdBldr);
        custNamePropBldr.SetSetMethod(custNameSetPropMthdBldr);

        Type retval = myTypeBuilder.CreateType();

        // Save the assembly so it can be examined with Ildasm.exe,
        // or referenced by a test program.
        myAsmBuilder.Save(myAsmName.Name + ".dll");
        return retval;
   }

   public static void Main()
   {
        Type custDataType = BuildDynamicTypeWithProperties();

        PropertyInfo[] custDataPropInfo = custDataType.GetProperties();
        foreach (PropertyInfo pInfo in custDataPropInfo) {
           Console.WriteLine("Property '{0}' created!", pInfo.ToString());
        }

        Console.WriteLine("---");
        // Note that when invoking a property, you need to use the proper BindingFlags -
        // BindingFlags.SetProperty when you invoke the "set" behavior, and
        // BindingFlags.GetProperty when you invoke the "get" behavior. Also note that
        // we invoke them based on the name we gave the property, as expected, and not
        // the name of the methods we bound to the specific property behaviors.

        object custData = Activator.CreateInstance(custDataType);
        custDataType.InvokeMember("CustomerName", BindingFlags.SetProperty,
                                      null, custData, new object[]{ "Joe User" });

        Console.WriteLine("The customerName field of instance custData has been set to '{0}'.",
                           custDataType.InvokeMember("CustomerName", BindingFlags.GetProperty,
                                                      null, custData, new object[]{ }));
   }
}

// --- O U T P U T ---
// The output should be as follows:
// -------------------
// Property 'System.String CustomerName' created!
// ---
// The customerName field of instance custData has been set to 'Joe User'.
// -------------------
Imports System.Threading
Imports System.Reflection
Imports System.Reflection.Emit

Class PropertyBuilderDemo
   
   Public Shared Function BuildDynamicTypeWithProperties() As Type
      Dim myDomain As AppDomain = Thread.GetDomain()
      Dim myAsmName As New AssemblyName()
      myAsmName.Name = "MyDynamicAssembly"
      
      ' To generate a persistable assembly, specify AssemblyBuilderAccess.RunAndSave.
      Dim myAsmBuilder As AssemblyBuilder = myDomain.DefineDynamicAssembly(myAsmName, _
                                                        AssemblyBuilderAccess.RunAndSave)
      
      ' Generate a persistable, single-module assembly.
      Dim myModBuilder As ModuleBuilder = _
          myAsmBuilder.DefineDynamicModule(myAsmName.Name, myAsmName.Name & ".dll")
      
      Dim myTypeBuilder As TypeBuilder = myModBuilder.DefineType("CustomerData", TypeAttributes.Public)
      
      ' Define a private field to hold the property value.
      Dim customerNameBldr As FieldBuilder = myTypeBuilder.DefineField("customerName", _
                                             GetType(String), FieldAttributes.Private)
      
      ' The last argument of DefineProperty is Nothing, because the
      ' property has no parameters. (If you don't specify Nothing, you must
      ' specify an array of Type objects. For a parameterless property,
      ' use an array with no elements: New Type() {})
      Dim custNamePropBldr As PropertyBuilder = _
          myTypeBuilder.DefineProperty("CustomerName", _
                                       PropertyAttributes.HasDefault, _
                                       GetType(String), _
                                       Nothing)
      
      ' The property set and property get methods require a special
      ' set of attributes.
      Dim getSetAttr As MethodAttributes = _
          MethodAttributes.Public Or MethodAttributes.SpecialName _
              Or MethodAttributes.HideBySig

      ' Define the "get" accessor method for CustomerName.
      Dim custNameGetPropMthdBldr As MethodBuilder = _
          myTypeBuilder.DefineMethod("GetCustomerName", _
                                     getSetAttr, _
                                     GetType(String), _
                                     Type.EmptyTypes)
      
      Dim custNameGetIL As ILGenerator = custNameGetPropMthdBldr.GetILGenerator()
      
      custNameGetIL.Emit(OpCodes.Ldarg_0)
      custNameGetIL.Emit(OpCodes.Ldfld, customerNameBldr)
      custNameGetIL.Emit(OpCodes.Ret)
      
      ' Define the "set" accessor method for CustomerName.
      Dim custNameSetPropMthdBldr As MethodBuilder = _
          myTypeBuilder.DefineMethod("get_CustomerName", _
                                     getSetAttr, _
                                     Nothing, _
                                     New Type() {GetType(String)})
      
      Dim custNameSetIL As ILGenerator = custNameSetPropMthdBldr.GetILGenerator()
      
      custNameSetIL.Emit(OpCodes.Ldarg_0)
      custNameSetIL.Emit(OpCodes.Ldarg_1)
      custNameSetIL.Emit(OpCodes.Stfld, customerNameBldr)
      custNameSetIL.Emit(OpCodes.Ret)
      
      ' Last, we must map the two methods created above to our PropertyBuilder to 
      ' their corresponding behaviors, "get" and "set" respectively. 
      custNamePropBldr.SetGetMethod(custNameGetPropMthdBldr)
      custNamePropBldr.SetSetMethod(custNameSetPropMthdBldr)
            
      Dim retval As Type = myTypeBuilder.CreateType()

      ' Save the assembly so it can be examined with Ildasm.exe,
      ' or referenced by a test program.
      myAsmBuilder.Save(myAsmName.Name & ".dll")
      return retval
   End Function 'BuildDynamicTypeWithProperties
    
   
   Public Shared Sub Main()
      Dim custDataType As Type = BuildDynamicTypeWithProperties()
      
      Dim custDataPropInfo As PropertyInfo() = custDataType.GetProperties()
      Dim pInfo As PropertyInfo
      For Each pInfo In  custDataPropInfo
         Console.WriteLine("Property '{0}' created!", pInfo.ToString())
      Next pInfo
      
      Console.WriteLine("---")
      ' Note that when invoking a property, you need to use the proper BindingFlags -
      ' BindingFlags.SetProperty when you invoke the "set" behavior, and 
      ' BindingFlags.GetProperty when you invoke the "get" behavior. Also note that
      ' we invoke them based on the name we gave the property, as expected, and not
      ' the name of the methods we bound to the specific property behaviors.
      Dim custData As Object = Activator.CreateInstance(custDataType)
      custDataType.InvokeMember("CustomerName", BindingFlags.SetProperty, Nothing, _
                                custData, New Object() {"Joe User"})
      
      Console.WriteLine("The customerName field of instance custData has been set to '{0}'.", _
                        custDataType.InvokeMember("CustomerName", BindingFlags.GetProperty, _
                        Nothing, custData, New Object() {}))
   End Sub
End Class


' --- O U T P U T ---
' The output should be as follows:
' -------------------
' Property 'System.String CustomerName' created!
' ---
' The customerName field of instance custData has been set to 'Joe User'.
' -------------------

Hinweise

Ein PropertyBuilder ist immer einem TypeBuilderzugeordnet. Die TypeBuilder. DefineProperty -Methode gibt ein neues PropertyBuilder an einen Client zurück.

Konstruktoren

PropertyBuilder()

Initialisiert eine neue Instanz der PropertyBuilder-Klasse.

Eigenschaften

Attributes

Ruft die Attribute für diese Eigenschaft ab.

CanRead

Ruft einen Wert ab, der angibt, ob die Eigenschaft gelesen werden kann.

CanWrite

Ruft einen Wert ab, der angibt, ob in die Eigenschaft geschrieben werden kann.

CustomAttributes

Ruft eine Sammlung ab, die die benutzerdefinierten Attribute dieses Members enthält.

(Geerbt von MemberInfo)
DeclaringType

Ruft die Klasse ab, die diesen Member deklariert.

GetMethod

Ruft die get-Zugriffsmethode für diese Eigenschaft ab.

(Geerbt von PropertyInfo)
IsCollectible

Ruft einen Wert ab, der angibt, ob dieses AssemblyLoadContext-Objekt Teil einer Assembly ist, die sich in einem entladbaren MemberInfo befindet.

(Geerbt von MemberInfo)
IsSpecialName

Ruft einen Wert ab, der angibt, ob es sich bei der Eigenschaft um den besonderen Namen handelt.

(Geerbt von PropertyInfo)
MemberType

Ruft einen MemberTypes-Wert ab, der angibt, dass dieser Member eine Eigenschaft ist.

(Geerbt von PropertyInfo)
MetadataToken

Ruft einen Wert ab, der ein Metadatenelement identifiziert.

(Geerbt von MemberInfo)
Module

Ruft das Modul ab, in dem der Typ definiert wird, der die aktuelle Eigenschaft deklariert.

Module

Ruft das Modul ab, in dem der Typ definiert ist, der den von der aktuellen MemberInfo-Klasse dargestellten Member deklariert.

(Geerbt von MemberInfo)
Name

Ruft den Namen dieses Members ab.

PropertyToken

Ruft das Token für diese Eigenschaft ab.

PropertyType

Ruft den Typ des Felds für diese Eigenschaft ab.

ReflectedType

Ruft das Klassenobjekt ab, mit dem diese Instanz von MemberInfo abgerufen wurde.

ReflectedType

Ruft das Klassenobjekt ab, mit dem diese Instanz von MemberInfo abgerufen wurde.

(Geerbt von MemberInfo)
SetMethod

Ruft die set-Zugriffsmethode für diese Eigenschaft ab.

(Geerbt von PropertyInfo)

Methoden

AddOtherMethod(MethodBuilder)

Fügt eine der anderen Methoden hinzu, die dieser Eigenschaft zugeordnet sind.

AddOtherMethodCore(MethodBuilder)

Fügt beim Überschreiben in einer abgeleiteten Klasse eine der anderen Methoden hinzu, die dieser Eigenschaft zugeordnet sind.

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.

(Geerbt von PropertyInfo)
GetAccessors()

Gibt ein Array zurück, dessen Elemente den öffentlichen get- und set-Accessor der Eigenschaft reflektieren, die von der aktuellen Instanz reflektiert wird.

(Geerbt von PropertyInfo)
GetAccessors(Boolean)

Gibt ein Array der öffentlichen und nicht öffentlichen get-Accessoren und set-Accessoren für diese Eigenschaft zurück.

GetAccessors(Boolean)

Gibt ein Array zurück, dessen Elemente den öffentlichen und, sofern angegeben, den nicht öffentlichen get- und set-Accessoren der Eigenschaft entsprechen, die durch die aktuelle Instanz angegeben ist.

(Geerbt von PropertyInfo)
GetConstantValue()

Gibt einen literalen Wert zurück, der der Eigenschaft von einem Compiler zugeordnet wurde.

(Geerbt von PropertyInfo)
GetCustomAttributes(Boolean)

Gibt ein Array aller benutzerdefinierten Attribute für diese Eigenschaft zurück.

GetCustomAttributes(Boolean)

Gibt beim Überschreiben in einer abgeleiteten Klasse ein Array mit allen benutzerdefinierten Attributen zurück, die auf diesen Member angewendet wurden.

(Geerbt von MemberInfo)
GetCustomAttributes(Type, Boolean)

Gibt ein Array benutzerdefinierter Attribute zurück, die durch Type bezeichnet werden.

GetCustomAttributes(Type, Boolean)

Gibt beim Überschreiben in einer abgeleiteten Klasse ein Array aus benutzerdefinierten Attributen zurück, die auf diesen Member angewendet und von Type identifiziert wurden.

(Geerbt von MemberInfo)
GetCustomAttributesData()

Gibt eine Liste von CustomAttributeData-Objekten zurück, die Daten zu den Attributen darstellen, die auf den Zielmember angewendet wurden.

(Geerbt von MemberInfo)
GetGetMethod()

Gibt den öffentlichen get-Accessor für diese Eigenschaft zurück.

(Geerbt von PropertyInfo)
GetGetMethod(Boolean)

Gibt den öffentlichen und nicht öffentlichen Get-Accessor für diese Eigenschaft zurück.

GetGetMethod(Boolean)

Gibt beim Überschreiben in einer abgeleiteten Klasse den öffentlichen oder nicht öffentlichen get-Accessor für diese Eigenschaft zurück.

(Geerbt von PropertyInfo)
GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von PropertyInfo)
GetIndexParameters()

Gibt ein Array aller Indexparameter für diese Eigenschaft zurück.

GetModifiedPropertyType()

Ruft den geänderten Typ dieses Eigenschaftsobjekts ab.

(Geerbt von PropertyInfo)
GetOptionalCustomModifiers()

Gibt ein Array von Typen zurück, die die optionalen benutzerdefinierten Modifizierer der Eigenschaft darstellen.

(Geerbt von PropertyInfo)
GetRawConstantValue()

Gibt einen literalen Wert zurück, der der Eigenschaft von einem Compiler zugeordnet wurde.

(Geerbt von PropertyInfo)
GetRequiredCustomModifiers()

Gibt ein Array von Typen zurück, die die erforderlichen benutzerdefinierten Modifizierer der Eigenschaft darstellen.

(Geerbt von PropertyInfo)
GetSetMethod()

Gibt den öffentlichen set-Accessor für diese Eigenschaft zurück.

(Geerbt von PropertyInfo)
GetSetMethod(Boolean)

Gibt den festgelegten Accessor für diese Eigenschaft zurück.

GetSetMethod(Boolean)

Gibt beim Überschreiben in einer abgeleiteten Klasse den set-Accessor für diese Eigenschaft zurück.

(Geerbt von PropertyInfo)
GetType()

Ermittelt die Attribute einer Eigenschaft und bietet Zugriff auf die Metadaten der Eigenschaft.

(Geerbt von PropertyInfo)
GetValue(Object)

Gibt den Eigenschaftswert eines angegebenen Objekts zurück.

(Geerbt von PropertyInfo)
GetValue(Object, BindingFlags, Binder, Object[], CultureInfo)

Ruft den Wert einer Eigenschaft mit den Angaben für Bindung, Index und CultureInfo ab.

GetValue(Object, BindingFlags, Binder, Object[], CultureInfo)

Gibt beim Überschreiben in einer abgeleiteten Klasse den Eigenschaftswert eines angegebenen Objekts zurück, das die angegebene Bindung, den Index und kulturabhängige Informationen besitzt.

(Geerbt von PropertyInfo)
GetValue(Object, Object[])

Ruft durch Aufrufen der Get-Methode der Eigenschaft den Wert der indizierten Eigenschaft ab.

HasSameMetadataDefinitionAs(MemberInfo)

Definiert die Eigenschaften für einen Typ.

(Geerbt von MemberInfo)
IsDefined(Type, Boolean)

Gibt an, ob für diese Eigenschaft eine oder mehrere Instanzen von attributeType definiert sind.

IsDefined(Type, Boolean)

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob ein oder mehrere Attribute des angegebenen Typs oder seiner abgeleiteten Typen auf diesen Member angewendet werden.

(Geerbt von MemberInfo)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
SetConstant(Object)

Legt den Standardwert dieser Eigenschaft fest.

SetConstantCore(Object)

Legt beim Überschreiben in einer abgeleiteten Klasse den Standardwert dieser Eigenschaft fest.

SetCustomAttribute(ConstructorInfo, Byte[])

Legt ein benutzerdefiniertes Attribut mithilfe eines angegebenen benutzerdefinierten Attribut-BLOBs fest.

SetCustomAttribute(CustomAttributeBuilder)

Legt ein benutzerdefiniertes Attribut mithilfe eines benutzerdefinierten Attribut-Generators fest.

SetCustomAttributeCore(ConstructorInfo, ReadOnlySpan<Byte>)

Legt beim Überschreiben in einer abgeleiteten Klasse ein benutzerdefiniertes Attribut für diese Assembly fest.

SetGetMethod(MethodBuilder)

Legt die Methode fest, die den Eigenschaftswert abruft.

SetGetMethodCore(MethodBuilder)

Legt beim Überschreiben in einer abgeleiteten Klasse die Methode fest, die den Eigenschaftswert abruft.

SetSetMethod(MethodBuilder)

Legt die Methode zum Festlegen des Eigenschaftswerts fest.

SetSetMethodCore(MethodBuilder)

Legt beim Überschreiben in einer abgeleiteten Klasse die Methode fest, die den Eigenschaftswert festlegt.

SetValue(Object, Object)

Legt den Eigenschaftswert des angegebenen Objekts fest.

(Geerbt von PropertyInfo)
SetValue(Object, Object, BindingFlags, Binder, Object[], CultureInfo)

Legt den Eigenschaftswert für das angegebene Objekt auf den angegebenen Wert fest.

SetValue(Object, Object, BindingFlags, Binder, Object[], CultureInfo)

Legt beim Überschreiben in einer abgeleiteten Klasse den Eigenschaftswert für ein angegebenes Objekt fest, das die angegebene Bindung, den Index und kulturabhängige Informationen besitzt.

(Geerbt von PropertyInfo)
SetValue(Object, Object, Object[])

Legt den Wert der Eigenschaft mit optionalen Indexwerten für Indexeigenschaften fest.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von MemberInfo)
_MemberInfo.GetType()

Ruft ein Type-Objekt ab, das die MemberInfo-Klasse darstellt.

(Geerbt von MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, die dann zum Abrufen der Typinformationen für eine Schnittstelle verwendet werden können.

(Geerbt von MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von MemberInfo)
_PropertyBuilder.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

_PropertyBuilder.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, die dann zum Abrufen der Typinformationen für eine Schnittstelle verwendet werden können.

_PropertyBuilder.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

_PropertyBuilder.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

_PropertyInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von PropertyInfo)
_PropertyInfo.GetType()

Ruft ein Type-Objekt ab, das den PropertyInfo-Typ darstellt.

(Geerbt von PropertyInfo)
_PropertyInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, die dann zum Abrufen der Typinformationen für eine Schnittstelle verwendet werden können.

(Geerbt von PropertyInfo)
_PropertyInfo.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von PropertyInfo)
_PropertyInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von PropertyInfo)
ICustomAttributeProvider.GetCustomAttributes(Boolean)

Gibt – mit Ausnahme benannter Attribute – ein Array mit allen für diesen Member definierten benutzerdefinierten Attributen zurück – oder ein leeres Array , wenn keine benutzerdefinierten Attribute vorhanden sind.

(Geerbt von MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

Gibt ein Array mit für diesen Member definierten benutzerdefinierten Attributen zurück – identifiziert nach Typ – oder ein leeres Array , wenn keine benutzerdefinierten Attribute vorhanden sind.

(Geerbt von MemberInfo)
ICustomAttributeProvider.IsDefined(Type, Boolean)

Gibt an, ob mindestens eine Instanz von attributeType für diesen Member definiert ist.

(Geerbt von MemberInfo)

Erweiterungsmethoden

GetCustomAttribute(MemberInfo, Type)

Ruft ein benutzerdefiniertes Attribut eines angegebenen Typs ab, der für einen angegebenen Member angewendet wird.

GetCustomAttribute(MemberInfo, Type, Boolean)

Ruft ein benutzerdefiniertes Attribut eines angegebenen Typs ab, der für einen angegebenen Member angewendet wird, und überprüft optional die Vorgänger dieses Members.

GetCustomAttribute<T>(MemberInfo)

Ruft ein benutzerdefiniertes Attribut eines angegebenen Typs ab, der für einen angegebenen Member angewendet wird.

GetCustomAttribute<T>(MemberInfo, Boolean)

Ruft ein benutzerdefiniertes Attribut eines angegebenen Typs ab, der für einen angegebenen Member angewendet wird, und überprüft optional die Vorgänger dieses Members.

GetCustomAttributes(MemberInfo)

Ruft eine Auflistung benutzerdefinierter Attribute ab, die für einen angegebenen Member angewendet werden.

GetCustomAttributes(MemberInfo, Boolean)

Ruft eine Auflistung benutzerdefinierter Attribute ab, die für einen angegebenen Member angewendet werden, und überprüft optional die Vorgänger dieses Members.

GetCustomAttributes(MemberInfo, Type)

Ruft eine Auflistung benutzerdefinierter Attribute eines angegebenen Typs ab, die für eine angegebenen Member angewendet werden.

GetCustomAttributes(MemberInfo, Type, Boolean)

Ruft eine Auflistung benutzerdefinierter Attribute eines angegebenen Typs ab, die für einen angegebenen Member angewendet werden, und überprüft optional die Vorgänger dieses Members.

GetCustomAttributes<T>(MemberInfo)

Ruft eine Auflistung benutzerdefinierter Attribute eines angegebenen Typs ab, die für eine angegebenen Member angewendet werden.

GetCustomAttributes<T>(MemberInfo, Boolean)

Ruft eine Auflistung benutzerdefinierter Attribute eines angegebenen Typs ab, die für einen angegebenen Member angewendet werden, und überprüft optional die Vorgänger dieses Members.

IsDefined(MemberInfo, Type)

Gibt an, ob irgend welche benutzerdefinierten Attribute eines bestimmten Typs auf eines angegebenen Members angewendet werden.

IsDefined(MemberInfo, Type, Boolean)

Gibt an, ob benutzerdefinierte Attribute eines angegebenen Typs auf einen angegebenen Member und optional auf dessen Vorgänger angewendet werden.

GetMetadataToken(MemberInfo)

Ruft ein Metadatentoken für das angegebene Element ab, falls verfügbar.

HasMetadataToken(MemberInfo)

Gibt einen Wert zurück, der angibt, ob ein Metadatentoken für das angegebene Element verfügbar ist.

GetAccessors(PropertyInfo)

Definiert die Eigenschaften für einen Typ.

GetAccessors(PropertyInfo, Boolean)

Definiert die Eigenschaften für einen Typ.

GetGetMethod(PropertyInfo)

Definiert die Eigenschaften für einen Typ.

GetGetMethod(PropertyInfo, Boolean)

Definiert die Eigenschaften für einen Typ.

GetSetMethod(PropertyInfo)

Definiert die Eigenschaften für einen Typ.

GetSetMethod(PropertyInfo, Boolean)

Definiert die Eigenschaften für einen Typ.

Gilt für: