如何将课程标记为已弃用?
可能重复:
如何将方法标记为已过时/已弃用? – C#
你如何标记一个类已过时? 我不想在我的项目中再使用一个类,但不想在两周之前删除它。
您需要使用属性[Obsolete]
。
这是一个例子:
[Obsolete("Not used anymore",true)] public class MyDeprecatedClass { //... }
你没有使用参数,它们是可选的(重载方法)。 第一个参数是原因,最后一个是在编译时标记错误,而不是警告。
按照Doak的回答,如果你想要编译代码,属性的第二个参数应该设置为false:
[Obsolete("Not used anymore", false)] public class MyDeprecatedClass { //... }
这只会引发警告。
当你的代码是一个确定的API,然后被第三方消费时,不要删除一个类而是弃用的原因是坚持一些“礼貌策略”。
如果您弃用而不是抹掉,那么您将为用户提供一个生命周期策略(例如,在版本XX之前维护和存在这些类),以便让他们计划正确迁移到您的新API。
如果你正在使用版本控制,我会build议只删除类。 没有理由有未使用的代码。
如果您稍后决定需要该类,则版本控制将是一个方便的撤消操作。