C#语言开发时的一些定制属性介绍
时间:2014-5-8
在NET Framework的程序集中,我们还可以创建自己的属性.
目前我们仅处理定制属性较肤浅的知识,主要介绍下述属性:
1.TestCaseAttribute-把测试类的代码与类本身链接起来;
2.BugFixAttribute-记录谁修改了源代码中的什么崆,以及修改的时间;
3.DatabaseTableAttribute和DatabaseColumnAttribute-说明如何根据.NET类创建数据库模式
定制属性只是一个特殊的类,它必须遵循下述两个规范:
1.属性必须派生于System.Attribute;
2.属性的构造函数只能包含可在编译时解析的类型,例如字符串和整数.
对于属性构造函数的参数来说,其类型的限制源于属性存储在程序集元数据中的优雅,在代码中使用属性时,就是在内联中使用属性的构造.例如:
[assembly:AssemblyKeyFile("company.Public")]
这个属性存储在程序集的元数据中,作为调用AssemblyKeyFileAttribute的构造的一个指令,这个带一个字符串参数,在以前的例子中,字符串是Compay.Public,如果定义了一个定制属性,这个属性的使用者就会把参数写入到类的构造函数中.