Obsolete(C# 编程指南)

Obsolete 属性将某个程序实体标记为一个建议不再使用的实体。每次使用被标记为已过时的实体时,随后将生成警告或错误,这取决于属性是如何配置的。例如:

[System.Obsolete("use class B")]
class A
{
    public void Method() { }
}
class B
{
    [System.Obsolete("use NewMethod", true)]
    public void OldMethod()  { }
    public void NewMethod()  { }
}

在此例中,Obsolete 属性应用于类 A 和方法 B.OldMethod。因为应用于 B.OldMethod 的属性构造函数的第二个参数设置为 true,所以此方法将导致编译器错误,而使用类 A 只会产生警告。但是,调用 B.NewMethod 既不产生警告也不产生错误。

向属性构造函数提供的作为第一个参数的字符串将显示为警告或错误的一部分。例如,当将它与前面的定义一起使用时,下面的代码将生成两个警告和一个错误:

// Generates 2 warnings:
A a = new A();
// Generate no errors or warnings:
B b = new B();
b.NewMethod();
// Generates an error, terminating compilation:
b.OldMethod();

为类 A 产生两个警告:一个用于声明类引用,一个用于类构造函数。

可在不使用参数的情况下使用 Obsolete 属性,但要包括此项已过时的原因及改用什么项的建议。

Obsolete 属性是一个单用途属性,并且可应用于允许属性的任何实体。Obsolete 是 ObsoleteAttribute 的别名

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值