当前位置:编程学习 > C#/ASP.NET >>

属性和元数据 -- zt

属性和元数据    
C#和C++之间一个显著的区别是它提供了对元数据的支持:有关类、对象、方法等其他实体的数据。属性可以分为二类:一类以CLR的一部分的形式出现,另一种是我们自己创建的属性,CLR属性用来支持串行化、排列和COM协同性等。一些属性是针对一个组合体的,有些属性则是针对类或界面,它们也被称作是属性目标。
 
将属性放在属性目标前的方括号内,属性就可以作用于它们的属性目标。
 
[assembly:AssemblyDelaySign(false)]
[assembly:AssemblyKeyFile(".keyFile.snk")]    
或用逗号将各个属性分开:    
[assembly:AssemblyDelaySign(false),
assembly:AssemblyKeyFile(".keyFile.snk")]    
自定义的属性    
我们可以任意创建自定义属性,并在认为合适的时候使用它们。假设我们需要跟踪bug的修复情况,就需要建立一个包含bug的数据库,但需要将bug报告与专门的修正情况绑定在一块儿,则可能在代码中添加如下所示的注释:    
//Bug323fixedbyJesseLiberty1/1/2005.    
这样,在源代码中就可以一目了然地了解bug的修正情况,但如果如果把相关的资料保存在数据库中可能会更好,这样就更方便我们的查询工作了。如果所有的bug报告都使用相同的语法那就更好了,但这时我们就需要一个定制的属性了。我们可能使用下面的内容代替代码中的注释:    
[BugFix(323,"JesseLiberty","1/1/2005")Comment="Offbyoneerror"]    
与C#中的其他元素一样,属性也是类。定制化的属性类需要继承System.Attribute:    
publicclassBugFixAttribute:System.Attribute    
补充:asp.net教程,基础入门 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,