如何使C#中的'using'指令更加简便易行

7
现今良好的编程实践倾向于将代码分割成许多程序集和命名空间(例如,参见 S#arp ArchitectureMVC等)。然而,这样做的一个副作用是您必须在每个类文件中添加一堆“using”指令。你知道这种情况:每个控制器类都需要使用模型和视图模型名称空间等等。
有没有什么技巧可以使这更容易?例如,是否可以在命名空间级别而不是文件级别上声明“using”指令-以便命名空间“foo”中的每个类自动使用命名空间“bar”?或者根据您所在的文件夹设置默认的“using”方式,还有其他使添加“using”更少乏味的方法吗?

1
刚刚一个小时前有人问了这个问题:在 .NET 中的别名 - user541686
1
谢谢Mehrdad,不过那有点不同,他们在问关于类型别名的问题。我在问更容易将命名空间链接在一起的方法。 - codeulike
看起来很相似,但如果这不是你要问的,那就算了。 :) - user541686
5个回答

4

如果想要更轻松地管理添加“using”和删除不必要的“using”,我建议尝试使用JetBrains' ReSharper。它可以帮助识别您需要添加丢失的“using”的位置,并将不需要的“using”语句变成灰色。


1
并且支持代码清理,可以自动进行整理。(比默认的Visual Studio清理功能提供更多设置。) - Steven Jeuris

2

正如在这个问题中所讨论的那样,这是不可能的。

当你有很长的using列表时,你可能也有太多的依赖关系。这可能表明你需要进行一些重构。


1

你可以创建自己的项目模板,包含必要的引用,并在创建新文件时使用它。


1

就语言而言,没有你想要的那种。

你最好的选择是使用工具(如 Visual Studio 中的某些工具),它们可以自动为选定的“未知符号”添加 using,按字母顺序排序 using,或删除当前文件中不再需要的 using。


1
在Visual Studio 2010中,您可以通过键入类型(例如IEnumerable<int>),使添加using变得更加轻松,如果在单词末尾出现红框(这表示缺少using语句),则在光标位于类型声明上时按下Ctrl + .。这应该会给您一个快速菜单,以自动添加缺失的using语句,所有操作都可以通过键盘完成。
或者,您可以定义一个代码片段,其中包含常用的using语句,并在使用上下文菜单>组织using时删除未使用的using语句。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接