2009-09-16 22 views
2

有什么办法可以在VS2008中为未使用的使用语句生成警告吗?我知道有Edit->Intellisense->Organize Usings->Remove Unused Usings,但如果这是一个编译时间警告将会很好。任何方式为未使用的使用产生编译器警告?

+0

vs2008:43的用途。 visual-studio-2008:3447使用。你认为哪个更合适? – 2009-09-16 19:22:06

+0

为什么社区只是设置为用更合适的标签替换vs2008? – 2009-09-16 19:27:11

+0

@Joel:我没有得到那个评论.. – 2009-09-16 19:27:14

回答

3

如果您使用ReSharper,默认情况下,它会以不同颜色显示未使用的使用情况(作为错误分析侧边栏中的警告),并且如果突出显示它们,则可以将它们更改为显示为错误。不幸的是,它不会阻止它编译,但它确实提醒你它们没有被使用。

+0

ReSharper是.net开发人员使用的常用工具吗? – 2009-09-16 19:35:11

+0

是的,ReSharper是常用的。 – 2009-09-16 19:56:23

+0

我拒绝在没有它的VS中开发。 – 2009-09-16 20:27:00

2

不,因为它不是编译器问题,所以不能生成编译器警告。编译器警告只有在找到死代码点时才会生成,例如空catch语句。或者一个未使用的变量。基本上任何可能导致运行时问题的东西。由于使用语句与运行时无关,并且是文本文件的更多样式问题,因此它们不会生成警告。

但是,您可以使用像reSharper这样的工具来提醒您未使用的使用语句。

0

我想这不是一个编译器警告,因为其无论在什么绝对没有后果......

8

我们试图对其中有问题的代码几乎可以肯定是坏,误导或无用的情况下创建的警告。而且,由于许多人在“警告为错误”的情况下编译,所以我们有很高的标准;引入虚假或多余的警告是不好的。

想象一下,您正在编译时默认打开“warnings as errors”。想象一下,我们实现了你想要的功能。你开始了一个新的项目,我们为您生成:

using System; 
using System.Text; 
using System.Linq; 

class Program 
{ 
    static void Main(string[] arguments) 
    { 
    } 
} 

,我们立即告诉你,你有一个错误在你的程序,因为没有“usings”是必要的!这是一个非常不好的用户体验。这些“使用”被IDE放在那里以方便您的使用,因此您无需自己定义它们。您提出的功能会将该功能从方便转变为唠叨。

相关问题