【发布时间】:2010-10-23 16:14:22
【问题描述】:
我喜欢将 using 指令放在当前命名空间内,而不是像 VS 和 Resharper 一样默认放置它们。
有没有人知道一种宏/标准功能,可以对未使用的 using 指令进行排序/删除并将它们放入当前命名空间?
【问题讨论】:
标签: visual-studio resharper using-directives
我喜欢将 using 指令放在当前命名空间内,而不是像 VS 和 Resharper 一样默认放置它们。
有没有人知道一种宏/标准功能,可以对未使用的 using 指令进行排序/删除并将它们放入当前命名空间?
【问题讨论】:
标签: visual-studio resharper using-directives
我已经 edited my default visual studio templates 将我的 using 指令放在命名空间内。
为了排序和删除未使用的指令,我使用Power Commands for Visual Studio 2008。
【讨论】:
更新 - ReSharper 2016.1:此选项现已移至代码编辑 → C# → 代码样式 → 将“使用”指令添加到最深范围
您是否尝试过 ReSharper 选项:
语言 → C# → 格式化样式 → 命名空间导入 → 将 using 指令添加到最深范围
我不确定 R# 的代码清理是否会为您重新排序现有代码。
【讨论】:
Code Editiong -> C# -> Namespace Imports(不在格式样式下)。
Code Editing -> C# -> Code Style
StyleCop 从 4.7 版开始支持 ReSharper 集成。
来自http://stylecop.codeplex.com/:
4.7 与 JetBrains R#5.1(5.1.3000.12)、R#6.0 (6.0.2202.688)、R#6.1 (6.1.37.86)、R#6.1.1 (6.1.1000.82) 和 R#7.0 兼容 (7.0.54.77)
4.7 与 Visual Studio 2008、Visual Studio 2010 和 Visual Studio 11 兼容
此版本包含 StyleCop ReSharper 插件(兼容 ReSharper 5.1、6.0、6.1、6.1.1 和 7.0)
【讨论】:
从 8.2 版开始,这已发生变化。现在在这里:
在 Visual Studio 中
Resharper -> 选项...
然后在“选项”对话框中
代码编辑 -> C# -> 命名空间导入 -> 必要时插入 using 指令 -> 将 using 指令添加到最深范围
【讨论】:
从 Resharper 9 开始,这已移至 Code Editing => C# => Code Style => Reference Qualification => Add 'using' directive to deepest scope。
或者您可以使用新的设置搜索工具并搜索deepest scope。将出现确切的设置:
【讨论】:
Resharper 2020.1 更新:现在可以在选项 → 代码编辑 → C# → 语法样式 → 参考限定和“使用”指令中找到此选项
【讨论】: