问题描述
我正在使用的代码有一个名为 Environment 的类,它不在任何命名空间中.不幸的是,如果我在一个导入 System 命名空间的类中,则无法引用名为 Environment 的自定义类.我知道这是一个不幸的选择,应该重构,但是有什么方法可以明确地引用冲突的类吗?
The code I'm working with has a class called Environment that is not in any namespace. Unfortunately if I am in a class that imports the System namespace, there is no way to refer to the custom class called Environment. I know this was an unfortunate choice and should be refactored, but is there any way I can explicitly refer to the conflicting class?
在 C++ 中,执行此操作的方法似乎是使用 ::,而在 Java 中,有一种称为 global:: 的方法在 C# 中如何实现?
In C++ it seems the way to do this is by using ::, and in Java there is something called global:: How do I do it in C#?
推荐答案
C# 也有一个全局(或未命名的)命名空间 - 你可以使用 global::
来访问你的类:
C# also has a global (or unnamed) namespace - you can use global::
to access your class:
global::Environment
See more on MSDN. Also see the ::
operator.
您也可以为其创建别名:
You can create an alias for it as well:
using myEnv = global::Environment;
using sysEnv = System.Environment;
这篇关于在 C# 中显式引用没有命名空间的类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!