[英]Why can't I use partial root namespace?
我有一个带有根名称空间Protege.MyLibrary
已编译类库。
它具有一些根类型,例如CommonlyNamedType
。
当我将库添加到使用的应用程序中时,为了某些情况的清晰起见,我希望能够将变量指定为:
using Protege;
...
MyLibrary.CommonlyNamedType oMyType = new MyLibrary.CommonlyNamedType;
而不是
using Protege.MyLibrary;
...
CommonlyNamedType oMyType = new CommonlyNamedType;
前者不编译,表示名称空间为Protege
“不需要使用指令”,可以将其删除。
这似乎很奇怪,因为我可以采用其他方法并添加其他名称空间,例如Protege.MyLibrary.AnotherNamespace
。
我似乎能够在VB.NET中100%做到这一点-使用Imports Protege
和/或Protege.MyLibrary
或Protege.MyLibrary
,甚至可选地使用冗余限定类型。 但不是在C#.NET中。
我对SO和其他地方的环境很好,并且没有看到有关此行为的解释。 有任何想法吗?
您可以静态导入类似的类
using static System.IO.File;
它不支持类,您需要使用常规using
来导入名称空间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.