Thinking:元数据?ObsoleteAttribute用来控制版本代码的吗?

王朝c#·作者佚名  2006-12-17
窄屏简体版  字體: |||超大  

近来比较关注元数据。元数据在NET中发挥着举足轻重的作用,理解和掌握元数据还真不是一朝一夕的事,自己估计断断续续的要半年的时间才能入门。我现在暂时将它理解成这样:元数据是类和类元素的解释。

现在看看ObsoleteAttribute。

MSDN说,“标记不再使用的程序元素。无法继承此类”。备注是如此解释,“ObsoleteAttribute 可适用于除程序集、模块、参数或返回值以外的所有程序元素。将元素标记为过时可以通知用户:该元素在产品的未来版本中将被移除”。

看了它的两个示例,自己写一个:

Public Class ComTax

<Obsolete('注意:十月一日起必须修改税率值!')> Protected _Rate As Double = 0.98

Public ReadOnly Property Rate() As Double

Get

Return _Rate '在编辑代码时,光标移到这时会提示: “_Rate”已过时,'注意:十月一日起必须修改税率值!'

End Get

End Property

End Class

Public Class TestTax

Shared Sub

Main()

Dim a As New ComTax

Console.WriteLine(a.Rate)

End Sub

End Class

这是在IDE编辑时的情形:

当我们编译它的时候,编译通过,但提示警告信息:

当把<Obsolete('注意:十月一日起必须修改税率值!')>改为

<Obsolete('注意:十月一日起必须修改税率值!',True)>时,编译失败。

我原来想ObsoleteAttribute能否用来控制版本更新,到了十月一日时_Rate自动失效引发程序运行错误,但找不到实现的办法。估计ObsoleteAttribute只是用来控制版本代码,特别是在团队作业时,审核者对提交的代码进行批阅,如此函数需要斟酌,则<Obsolete('效率差,请在适当时间改进')>;严重时,则<Obsolete('效率极差,请重新考虑'),True>。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航