VS2010/C#中的全局"使用"指令?

Son*_*ate 6 c# using-directives using-statement .net-4.0 visual-studio-2010

我很确定我知道答案,但我想知道是否有办法在我的C#项目中定义全局"使用"指令,这样我就不必在每个代码文件的顶部重复该指令.

我的兴趣实际上源于在.NET Framework中引入扩展方法.使用扩展方法的唯一方法是为包含扩展方法的命名空间定义using指令.没有using指令,我失去了扩展方法的Intellisense功能,这意味着我不会总是看到可用的方法.

作为框架开发人员,确保框架中提供的类型和方法清晰可供开发人员使用对我来说至关重要.虽然文档和培训服务于他们的目的,但我发现大多数开发人员都会按时完成并滚动智能感知列表以查看可用的方法和属性.即使他们转到对象浏览器或查看参考文档,他们也不会知道扩展方法,除非他们知道它.这就是Intellisense的用武之地.

而且,虽然我可以将使用指令添加到VS使用的模板,但VS中的"删除并排序"选项将删除引用扩展方法的指令(如果没有使用).

那么,所有这一切,是否有任何方法可以在VS 2010中定义全局"使用"指令?如果没有,MS将来会考虑它的任何机会吗?

Ode*_*ded 6

您可以通过确保未在命名空间中声明包含类来将扩展方法放在全局命名空间中.这将使它们在全球范围内可用.

至于默认命名空间 - 除了更改VS模板之外,这是不可能的.

当然,MS 总是可以考虑它.不太可能,但可能.

您可以考虑教育您的开发人员并提供有关扩展方法的约定(例如,已知的位置/命名空间架构),而不是寻找技术解决方案?