AttributeUsage
【AttributeUsage】
System.AttributeUsage声明一个Attribute的使用范围与使用原则。
AllowMultiple 和 Inherited 参数是可选的,所以此代码具有相同的效果:
AttributeTarget的值可以参考1。部分可取值如下:
如果 AllowMultiple 参数设置为 true,则返回特性可对单个实体应用多次。
如果 Inherited 设置为 false,则该特性不由从特性化的类派生的类继承。
Attribute.GetCustomAttribute可以获取一个类的Attribute。


[AttributeUsage(AttributeTargets.Class)]public class VersionAttribute : Attribute{public string Name { get; set; }public string Date { get; set; }public string Describtion { get; set; }}[Version(Name = "hyddd", Date = "2009-07-20", Describtion = "hyddd's class")]public class MyCode{//...}class Program{static void Main(string[] args){var info = typeof(MyCode);var classAttribute = (VersionAttribute)Attribute.GetCustomAttribute(info, typeof(VersionAttribute));Console.WriteLine(classAttribute.Name);Console.WriteLine(classAttribute.Date);Console.WriteLine(classAttribute.Describtion);}}
View Code
参考:
1、http://msdn.microsoft.com/zh-cn/library/system.attributetargets.aspx
2、http://msdn.microsoft.com/zh-cn/library/tw5zxet9.aspx
3、http://www.cnblogs.com/hyddd/archive/2009/07/20/1526777.html