Ale*_*lex 204 c# visual-studio-2008
我正在使用该Obsolete属性(正如其他程序员建议的那样)在使用某种方法时显示警告.
有没有办法SuppressMessage在使用合理的地方抑制类似于CodeAnalysis的警告?
谢谢!
编辑
这是[Obsolete("Some message")]因为我需要包含有关警告的一些细节.但是,#pragma warning disable 612一旦我将消息添加到裸[Obsolete]属性,它就不再起作用了......
编辑2
找到正确的警告编号 - 如果您在过时属性后面有消息,则为618.
所以要做我想做的事:
#pragma warning disable 618
然后打电话
#pragma warning restore 618
感谢Jared Par和Jon Skeet为我指明正确的方向!
Jon*_*eet 247
用途#pragma warning disable:
using System;
class Test
{
[Obsolete("Message")]
static void Foo(string x)
{
}
static void Main(string[] args)
{
#pragma warning disable 0618
// This one is okay
Foo("Good");
#pragma warning restore 0618
// This call is bad
Foo("Bad");
}
}
Run Code Online (Sandbox Code Playgroud)
之后恢复警告,这样你就不会错过"坏"的电话.
Jor*_*dão 125
该意图是禁用过时警告使用,无论是否结构标有[Obsolete]或[Obsolete("Message")].所以同时使用CS0612 和 CS0618:
#pragma warning disable 612, 618
...
#pragma warning restore 612, 618
Run Code Online (Sandbox Code Playgroud)
您正在寻找#pragma警告禁用指令
实质上,您在.cs文件中的调用站点上方添加以下命令.
#pragma warning disable 612
SomeMethodCall
Run Code Online (Sandbox Code Playgroud)
612是用于调用过时方法的错误消息ID