我有一个定义类的程序
namespace @default
{
public class Test
{
}
}
然后,我引用另一个没有命名空间的库,其中包含一个名为Test
. 如何隐藏这个其他库Test
类,以便我的程序看不到@default.Test
其他库Test
类?
我有一个定义类的程序
namespace @default
{
public class Test
{
}
}
然后,我引用另一个没有命名空间的库,其中包含一个名为Test
. 如何隐藏这个其他库Test
类,以便我的程序看不到@default.Test
其他库Test
类?
默认情况下,在您的default
命名空间内,default.Test
该类是您说Test
.
在您的default
命名空间之外,您需要在 using 语句中执行以下操作:
using ExternalTest = global::Test;
using Test = default.Test;
第一行并不是绝对必要的,因为您可以global::Test
在任何地方使用。
对于那些以前没有遇到过 global 的人:global (C# Reference)。
在标识符名称前加上前缀,global::
表示应该从全局(未命名)命名空间开始找到它。例如:
class Test { }
namespace Default {
public class Test {
global::Test theOtherOne;
}
}
您会经常看到它在自动生成的代码中使用,以避免意外的名称冲突。像 Resources.Designer.cs