为多个名称空间使用相同的别名

时间:2013-08-13 11:02:43

标签: c# .net namespaces using

是否有可能以某种方式为多个名称空间使用相同的using别名,我知道它们在C#中没有重叠的类名? 例如,如果我可以做这样的事情:

using NSP = namespace1.namespace2;
using NSP = namespace1.namespace3;  

namespace2namespace3没有具有相同名称的类,所以不用担心模糊的类名,对我来说写起来会更方便:

NSP.Class1 obj1 = new NSP.Class1();

大于

NSP.namespace2.Class1 obj1 = new NSP.namespace2.Class1();

如果我使用

using NSP = namespace1;

3 个答案:

答案 0 :(得分:2)

using NSP = namespace1.namespace2;
using NSP = namespace1.namespace3;  

首先你不能这样做。编译器不允许您为两个不同的命名空间定义相同的别名。这给编译器时间错误。

  

namespace2和namespace3没有具有相同名称的类,所以   不用担心模棱两可的班级名称,

它们具有相同的命名类并不重要,编译器不允许您这样做。

答案 1 :(得分:0)

您不能再使用相同的别名。您将收到以下编译器错误

  

使用别名'xxx'先前出现在此命名空间

答案 2 :(得分:0)

不,你不能,即使这两个名称空间也没有同名的类。 你会得到这个错误:

使用别名'NSP'先前出现在此命名空间中。