可能的重复: 我如何标记一个方法为过时/弃用?- C #
如何将类标记为已弃用?我不想在我的项目中再使用一个类,但不想在2周之前删除它。
可能的重复: 我如何标记一个方法为过时/弃用?- C #
如何将类标记为已弃用?我不想在我的项目中再使用一个类,但不想在2周之前删除它。
当前回答
您需要使用[Obsolete]属性。
例子:
[Obsolete("Not used any more", true)]
public class MyDeprecatedClass
{
//...
}
可选参数。第一个参数用于提供该参数过时的原因,最后一个参数用于在编译时抛出错误而不是警告。
其他回答
不删除类而弃用的原因是,当您的代码是一个已建立的API,然后被第三方使用时,要遵循一些“礼貌策略”。
如果您弃用而不是删除,那么您就为使用者提供了一个生命周期策略(例如,在版本X.X之前维护和存在类),以允许他们计划适当的迁移到您的新API。
根据Doak的回答,但是如果你想编译代码,属性的第二个参数应该设置为false:
[Obsolete("Not used any more", false)]
public class MyDeprecatedClass
{
//...
}
这只会抛出警告。
如果你使用版本控制,我建议只删除类。没有理由到处都是未使用的代码。
如果您稍后决定需要这个类,版本控制将是一个方便的撤销方法。
您需要使用[Obsolete]属性。
例子:
[Obsolete("Not used any more", true)]
public class MyDeprecatedClass
{
//...
}
可选参数。第一个参数用于提供该参数过时的原因,最后一个参数用于在编译时抛出错误而不是警告。