您需要使用该属性[Obsolete]
.
这是一个例子:
[Obsolete("Not used any more", true)] public class MyDeprecatedClass { //... }
您没有使用参数,它们是可选的(重载方法).第一个参数是出于这个原因,最后一个参数是在编译时标记错误而不是警告.
您需要使用该属性[Obsolete]
.
这是一个例子:
[Obsolete("Not used any more", true)] public class MyDeprecatedClass { //... }
您没有使用参数,它们是可选的(重载方法).第一个参数是出于这个原因,最后一个参数是在编译时标记错误而不是警告.
根据Doak的回答,如果你想要编译代码,属性的第二个参数应该设置为false:
[Obsolete("Not used any more", false)] public class MyDeprecatedClass { //... }
这只会发出警告.
不擦除类并弃用的原因是当您的代码是已建立的API然后被第三方使用时,遵守一些"礼貌政策".
如果您弃用而不是擦除,则为消费者提供生命周期策略(例如,维护和存在类,直到版本XX),以便允许他们规划适当的迁移到新API.