在整个代码库上重构“使用”指令?

Refactor "using" directives over an entire codebase?

提问人:Tom Kidd 提问时间:2/6/2009 最后编辑:Ben VoigtTom Kidd 更新时间:3/27/2012 访问量:743

问:

我喜欢 Visual Studio 2008 的一件事是能够重构和重新组织源代码文件中的“using”指令(这可能也是在 2005 年,我不记得了)。

具体来说,我说的是如何让它重新组织指令以按字母顺序排列(尽管核心 FCL 库浮动到顶部)并删除任何不需要存在的指令(从未使用或不再使用)。

有没有办法在整个旧代码库中自动执行这种重构(排序和修剪)?通过解决方案中的所有文件或跨多个解决方案文件。

C# visual-studio-2008 重构 using 指令

评论

0赞 Ben Voigt 3/27/2012
您指的是 Using 指令,而不是 Using 语句。无论有多少工具文档页面滥用了术语,using 指令都不是语句。

答:

6赞 Quintin Robinson 2/6/2009 #1

我相信您可以使用电源命令在解决方案范围内做到这一点

来自 PowerCommands 文档:

删除和排序 usings 此命令删除给定项目的所有类的 using 语句并对其进行排序。例如,在删除或组织向导生成的 using 语句时,它非常有用。可以从解决方案节点或单个项目节点执行此命令。

评论

0赞 Pat 2/6/2009
我自己回答得再好不过了。
0赞 Tom Kidd 2/6/2009
哦,哇,我刚刚在办公室里展示了这个,现在我就像今天的英雄。谢谢!
4赞 Karmic Coder 2/6/2009 #2

ReSharper 是一个(商业)Visual Studio 插件,它有一个“代码清理”实用程序,可以在解决方案范围级别运行。该实用程序检测并删除未引用的 using 语句,并执行其他有用的维护。但是,我不确定它是否提供了对它们进行排序的功能。

评论

0赞 Redwood 2/6/2009
我不确定它是否默认存在,但如果没有,它的 StyleCop 插件肯定会这样做。
1赞 Muad'Dib 2/6/2009 #3

使用适用于 Visual Studio '08 的 PowerCommands 加载项。您可以在“解决方案资源管理器”中右键单击解决方案,然后选择“删除并排序”usings。此外,“工具”-->“选项”对话框(向下滚动到“电源命令”项)中还有一些选项,用于在保存时删除代码,并在保存时重新格式化代码(使用 vs 设置)。