过时的属性不会在VS2010中引起任何编译器警告

Mou*_*Lin 2 c# visual-studio-2010 obsolete

我正在使用Visual Studio 2010.但是发现Obsolete属性不会导致任何编译器警告(我希望它导致编译器警告).警告级别为4.

谢谢.

Dar*_*rov 14

过时的属性,当您尝试使用标有1它的类/方法将导致一个编译器警告.例如,以下内容会导致警告:

[Obsolete("some obsolete message")]
class Foo { }

class Program
{
    static void Main(string[] args)
    {
        Foo foo = new Foo();
    }
}
Run Code Online (Sandbox Code Playgroud)

虽然这不是:

[Obsolete("some obsolete message")]
class Foo { }

class Program
{
    static void Main(string[] args)
    { }
}
Run Code Online (Sandbox Code Playgroud)