Illustrates the GetCustomAttributes method : Attribute « Language Basics « C# / C Sharp






Illustrates the GetCustomAttributes method

Illustrates the GetCustomAttributes method
/*
Mastering Visual C# .NET
by Jason Price, Mike Gunderloy

Publisher: Sybex;
ISBN: 0782129110
*/

/*
  Example17_4.cs illustrates the GetCustomAttributes method
*/

using System;


public class Example17_4 
{

    public static void Main() 
    {

        // retrieve all attributes of Class1
        Console.WriteLine("Class1 attributes: ");
        object[] aAttributes = Attribute.GetCustomAttributes(
            typeof(Class1));
        foreach (object attr in aAttributes)
        {
            Console.WriteLine(attr);
        }

    }

}


// declare an attribute named UnitTest
// UnitTest.Written is either true or false
public class UnitTest : Attribute
{
    bool bWritten;

    public bool Written()
    {
        return bWritten;
    }

    public UnitTest(bool Written)
    {
        bWritten = Written;
    }
}


// declare another attribute named LifeCycle
// LifeCycle.Stage returns a string
public class LifeCycle : Attribute
{
    string sStage;

    public string Stage()
    {
        return sStage;
    }

    public LifeCycle(string Stage)
    {
        sStage = Stage;
    }
}

// apply the attribues to a class
[UnitTest(true)]
[LifeCycle("Coding")]
public class Class1
{
}




           
       








Related examples in the same category

1.Subclass System.Attribute
2.A simple attribute exampleA simple attribute example
3.Use a named attribute parameterUse a named attribute parameter
4.Creating and using a class attribute.
5.Attribute in class inheritance
6.Defining New Attribute Classes
7.Use AttributeUsage
8.Use a property as a named attribute parameterUse a property as a named attribute parameter
9.Demonstrate the Conditional attributeDemonstrate the Conditional attribute
10.Define contant and use it in Conditional attribute
11.Demonstrate the Obsolete attributeDemonstrate the Obsolete attribute
12.Illustrates use of the Obsolete attribute
13.Compiles into a library defining the RamdomSupplier attribute and the RandomMethod attribute
14.Shows the use of assembly attributes
15.How to create a custom attributeHow to create a custom attribute
16.Illustrates use of the Conditional attributeIllustrates use of the Conditional attribute
17.demonstrates the flags attribute of an enumeration