1 out of 1 rated this helpful - Rate this topic

17.4.1 The AttributeUsage attribute

Visual Studio .NET 2003

The attribute AttributeUsage is used to describe the manner in which the attribute class can be used.

A class that is decorated with the AttributeUsage attribute must derive from System.Attribute, either directly or indirectly. Otherwise, a compile-time error occurs.

namespace System
{
   [AttributeUsage(AttributeTargets.Class)]
   public class AttributeUsageAttribute: Attribute
   {
      public AttributeUsageAttribute(AttributeTargets validOn) {...}
      public virtual bool AllowMultiple { get {...} set {...} }
      public virtual bool Inherited { get {...} set {...} }
      public virtual AttributeTargets ValidOn { get {...} }
   }
   public enum AttributeTargets
   {
      Assembly    = 0x0001,
      Module       = 0x0002,
      Class       = 0x0004,
      Struct       = 0x0008,
      Enum          = 0x0010,
      Constructor = 0x0020,
      Method       = 0x0040,
      Property    = 0x0080,
      Field       = 0x0100,
      Event       = 0x0200,
      Interface    = 0x0400,
      Parameter    = 0x0800,
      Delegate    = 0x1000,
      ReturnValue = 0x2000,
      All = Assembly | Module | Class | Struct | Enum | Constructor | 
         Method | Property | Field | Event | Interface | Parameter | 
         Delegate | ReturnValue
   }
}
Did you find this helpful?
(1500 characters remaining)