Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

MethodBase.Attributes-Eigenschaft

 

Veröffentlicht: Oktober 2016

Ruft die dieser Methode zugeordneten Attribute ab.

Namespace:   System.Reflection
Assembly:  mscorlib (in mscorlib.dll)

public abstract MethodAttributes Attributes { get; }

Eigenschaftswert

Type: System.Reflection.MethodAttributes

Einer der MethodAttributes-Werte.

Alle Elemente verfügen über einen Satz von Attributen, die in Bezug auf den spezifischen Typ der Member definiert sind.

Zum Abrufen der MethodAttributes, rufen Sie zunächst den Typ. Abzurufen Sie die Methode, von dem Typ. Abrufen von der Methode, die MethodAttributes.

Hinweise für Implementierer:

Verwenden der Attributes -Eigenschaft bestimmt, ob eine Methode public, private, final, virtual, und so weiter.

Das folgende Codebeispiel zeigt die Attribute der benutzerdefinierten Methode Mymethod.


using System;
using System.Reflection;

class AttributesSample
{
    public void Mymethod (int int1m, out string str2m, ref string str3m)
    {
        str2m = "in Mymethod";
    }

    public static int Main(string[] args)
    {      
        Console.WriteLine ("Reflection.MethodBase.Attributes Sample");

        // Get the type.
        Type MyType = Type.GetType("AttributesSample");

        // Get the method Mymethod on the type.
        MethodBase Mymethodbase = MyType.GetMethod("Mymethod");

        // Display the method name.
        Console.WriteLine("Mymethodbase = " + Mymethodbase);

        // Get the MethodAttribute enumerated value.
        MethodAttributes Myattributes = Mymethodbase.Attributes;

        // Display the flags that are set.
        PrintAttributes(typeof(System.Reflection.MethodAttributes), (int) Myattributes);
        return 0;
    }


    public static void PrintAttributes(Type attribType, int iAttribValue)
    {
        if (!attribType.IsEnum)
        { 
            Console.WriteLine("This type is not an enum."); 
            return; 
        }

        FieldInfo[] fields = attribType.GetFields(BindingFlags.Public | BindingFlags.Static);
        for (int i = 0; i < fields.Length; i++)
        {
            int fieldvalue = (Int32)fields[i].GetValue(null);
            if ((fieldvalue & iAttribValue) == fieldvalue)
            {
                Console.WriteLine(fields[i].Name);
            }
        }
    }
}

Dieser Code erzeugt die folgende Ausgabe:

Beispiel Reflection.MethodBase.Attributes

Mymethodbase = "void" Mymethod (Int32 und System.String ByRef System.String ByRef)

PrivateScope

FamANDAssem

Produktreihe

Öffentlich

HideBySig

ReuseSlot

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: