Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

Attribute.GetCustomAttributes-Methode (Assembly, Boolean)

Ruft ein Array der benutzerdefinierten Attribute ab, die auf eine Assembly angewendet werden. Parameter geben die Assembly und eine ignorierte Suchoption an.

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

public static Attribute[] GetCustomAttributes (
	Assembly element,
	bool inherit
)
public static Attribute[] GetCustomAttributes (
	Assembly element, 
	boolean inherit
)
public static function GetCustomAttributes (
	element : Assembly, 
	inherit : boolean
) : Attribute[]

Parameter

element

Ein von der Assembly-Klasse abgeleitetes Objekt, das eine wiederverwendbare Auflistung von Modulen beschreibt.

inherit

Dieser Parameter wird ignoriert und wirkt sich nicht auf die Funktionsweise dieser Methode aus.

Rückgabewert

Ein Attribute-Array mit den benutzerdefinierten Attributen, die für element übernommen werden, oder ein leeres Array, wenn keine benutzerdefinierten Attribute vorhanden sind.

AusnahmetypBedingung

ArgumentNullException

element oder attributeType ist NULL (Nothing in Visual Basic).

Im folgenden Codebeispiel wird die Verwendung der GetCustomAttributes-Methode veranschaulicht, die Assembly als Parameter annimmt.

using System;
using System.Reflection;

[assembly: AssemblyTitle("CustAttrs1CS")]
[assembly: AssemblyDescription("GetCustomAttributes() Demo")]
[assembly: AssemblyCompany("Microsoft")]

namespace CustAttrs1CS {
    class DemoClass {
        static void Main(string[] args) {
            Type clsType = typeof(DemoClass);
            // Get the Assembly type to access its metadata.
            Assembly assy = clsType.Assembly;

            // Iterate through the attributes for the assembly.
            foreach(Attribute attr in Attribute.GetCustomAttributes(assy)) {
                // Check for the AssemblyTitle attribute.
                if (attr.GetType() == typeof(AssemblyTitleAttribute))
                    Console.WriteLine("Assembly title is \"{0}\".",
                        ((AssemblyTitleAttribute)attr).Title);

                // Check for the AssemblyDescription attribute.
                else if (attr.GetType() == 
                    typeof(AssemblyDescriptionAttribute))
                    Console.WriteLine("Assembly description is \"{0}\".",
                        ((AssemblyDescriptionAttribute)attr).Description);

                // Check for the AssemblyCompany attribute.
                else if (attr.GetType() == typeof(AssemblyCompanyAttribute))
                    Console.WriteLine("Assembly company is {0}.",
                        ((AssemblyCompanyAttribute)attr).Company);
            }
        }
    }
}

/*
 * Output:
 * Assembly company is Microsoft.
 * Assembly description is "GetCustomAttributes() Demo".
 * Assembly title is "CustAttrs1CS".
 */

package CustAttrs1JSL; 
import System.*;
import System.Reflection.*;
import System.Collections.*;

/** @assembly AssemblyTitle("CustAttrs1JSL")
 */
/** @assembly AssemblyDescription("GetCustomAttributes() Demo")
 */
/** @assembly AssemblyCompany("Microsoft")
 */
class DemoClass
{
    public static void main(String[] args)
    {
        Type clsType = DemoClass.class.ToType();

        // Get the Assembly type to access its metadata.
        Assembly assy = clsType.get_Assembly();

        // Iterate through the attributes for the assembly.
        IEnumerator objEnum = Attribute.GetCustomAttributes(assy).
            GetEnumerator();

        while (objEnum.MoveNext()) {
            Attribute attr = (Attribute)objEnum.get_Current();

            // Check for the AssemblyTitle attribute.
            if (attr.GetType().Equals(AssemblyTitleAttribute.class.ToType())) {
                Console.WriteLine("Assembly title is \"{0}\".", 
                    ((AssemblyTitleAttribute)(attr)).get_Title());
            }
            // Check for the AssemblyDescription attribute.
            else {
                if (attr.GetType().Equals(AssemblyDescriptionAttribute.class.
                    ToType())) {
                    Console.WriteLine("Assembly description is \"{0}\".",
                        ((AssemblyDescriptionAttribute)(attr)).
                        get_Description());
                }
                // Check for the AssemblyCompany attribute.
                else {
                    if (attr.GetType().Equals(AssemblyCompanyAttribute.class.
                        ToType())) {
                        Console.WriteLine("Assembly company is {0}.", 
                            ((AssemblyCompanyAttribute)(attr)).get_Company());
                    }
                }
            }
        }
    } //main
} //DemoClass
   
/*
    Output:
    Assembly company is Microsoft.
    Assembly description is "GetCustomAttributes() Demo".
    Assembly title is "CustAttrs1JSL".
*/

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0
Anzeigen: