在 C# 中使用 using 语句强制实施完整的命名空间
本文关键字:施完整 命名空间 语句 using | 更新日期: 2023-09-27 18:30:17
我已经环顾四周一段时间了,看看如何强制我的 C# 项目具有完整的命名空间路径。
例如,如果在Visual Studio中执行Ctrl+.
时Foo.Bar.Car.Dealer
类X的命名空间,它有时会放置像using Car.Dealer
这样的语句;这特别成为多个项目解决方案的问题。我一直在寻找StyleCop规则或可能有助于我完成这项工作的东西。
有什么帮助或想法吗?
编辑
仅当 using 类属于相同的命名空间前缀时,上述语句才成立。下面是完整的代码示例:
文件: X.cs
namespace Foo.Bar.Car.Dealer {
class X {}
}
文件:使用类.cs
namespace Foo.Bar.Another.ClassPath {
using Car.Dealer;
class UsingClass {
private X _x;
}
}
VS选择了using Car.Dealer
但我想使用Foo.Bar.Car.Dealer强制执行
我不知道
2012 年之前的版本,但从那时起,遇到未知类型时弹出的图标提供了通过 using 指令添加命名空间或简单地前缀完整命名空间引用的类型。
如果您不想通过 using 指令添加命名空间(看起来像 using Foo.Bar.Car.Dealer;
),
那么在您的示例中,您只需要将类型X
引用为 Foo.Bar.Car.Dealer.X
。
例:
//assuming your X type is instantiable
Foo.Bar.Car.Dealer.X myX = new Foo.Bar.Car.Dealer.X();