首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将方法标记为已过时或已弃用?

如何将方法标记为已过时或已弃用?
EN

Stack Overflow用户
提问于 2009-11-19 05:53:38
回答 4查看 317.9K关注 0票数 1.1K

如何使用C#将方法标记为已过时或已弃用?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-11-19 05:54:16

最短的方法是将ObsoleteAttribute添加为attribute to the method。确保包含适当的解释:

代码语言:javascript
运行
复制
[Obsolete("Method1 is deprecated, please use Method2 instead.")]
public void Method1()
{ … }

如果方法是从代码中的某个地方调用的,您还可以导致编译失败,将该方法的使用视为错误而不是警告

代码语言:javascript
运行
复制
[Obsolete("Method1 is deprecated, please use Method2 instead.", true)]
票数 1.8K
EN

Stack Overflow用户

发布于 2016-10-07 23:22:59

要使用警告标记为过时,请执行以下操作:

代码语言:javascript
运行
复制
[Obsolete]
private static void SomeMethod()

当你使用它时,你会得到一个警告:

使用IntelliSense:

如果你想要一条消息:

代码语言:javascript
运行
复制
[Obsolete("My message")]
private static void SomeMethod()

这是IntelliSense工具提示:

最后,如果您希望将使用情况标记为错误:

代码语言:javascript
运行
复制
[Obsolete("My message", true)]
private static void SomeMethod()

使用时,您会得到以下结果:

注意:使用消息告诉人们他们应该使用什么,而不是为什么它过时了。

票数 163
EN

Stack Overflow用户

发布于 2009-11-19 06:04:22

使用关键字Obsolete向方法添加批注。消息参数是可选的,但这是一个很好的想法来传达为什么项目现在是过时的和/或使用什么来代替。

示例:

代码语言:javascript
运行
复制
[System.Obsolete("use myMethodB instead")]
void myMethodA()
票数 73
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1759352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档