[AttributeUsage]
其实AttributeUsage类就是描述了一个定制特性如和被使用。
C# AttributeUsage的使用要明白:
AttributeUsage有三个属性,我们可以把它放置在定制属性前面。第一个属性是:
◆ValidOn
通过这个属性,我们能够定义定制特性应该在何种程序实体前放置。一个属性可以被放置的所有程序实体在AttributeTargets enumerator中列出。通过OR操作我们可以把若干个AttributeTargets值组合起来。◆AllowMultiple
这个属性标记了我们的定制特性能否被重复放置在同一个程序实体前多次。◆Inherited
我们可以使用这个属性来控制定制特性的继承规则。它标记了我们的特性能否被继承。C# AttributeUsage的使用实例:
下面让我们来做一些实际的东西。我们将会在刚才的Help特性前放置AttributeUsage特性以期待在它的帮助下控制Help特性的使用。
using System;
[AttributeUsage(AttributeTargets.Class), AllowMultiple = false,
Inherited = false ]
public class HelpAttribute : Attribute
[Scope]
[Serializable]
[STAThread]
[TableName]
[ThreadStatic]
[ParamArray]
[PrimaryKey]
[CLSCompliant]
[LoaderOptimization]
[Flags]
[ColumnName]
[ContextStatic]
[MTAThread]
[NonSerialized]
[Cacheable]
[DeclareColumns]
[IgnoreColumn]
[IncludeColumn]
[Obsolete]
[ReadOnlyColumn]