如何将课程标记为已弃用?

可能重复:
如何将方法标记为已过时/已弃用? – C#

你如何标记一个类已过时? 我不想在我的项目中再使用一个类,但不想在两周之前删除它。

您需要使用属性[Obsolete]

这是一个例子:

 [Obsolete("Not used anymore",true)] public class MyDeprecatedClass { //... } 

你没有使用参数,它们是可选的(重载方法)。 第一个参数是原因,最后一个是在编译时标记错误,而不是警告。

按照Doak的回答,如果你想要编译代码,属性的第二个参数应该设置为false:

 [Obsolete("Not used anymore", false)] public class MyDeprecatedClass { //... } 

这只会引发警告。

当你的代码是一个确定的API,然后被第三方消费时,不要删除一个类而是弃用的原因是坚持一些“礼貌策略”。

如果您弃用而不是抹掉,那么您将为用户提供一个生命周期策略(例如,在版本XX之前维护和存在这些类),以便让他们计划正确迁移到您的新API。

如果你正在使用版本控制,我会build议只删除类。 没有理由有未使用的代码。

如果您稍后决定需要该类,则版本控制将是一个方便的撤消操作。