繁体   English   中英

显式引用C#中没有命名空间的类

[英]explicitly refer to a class without a namespace in C#

我正在使用的代码有一个名为Environment的类,它不在任何名称空间中。 不幸的是,如果我在一个导入System命名空间的类中,则无法引用名为Environment的自定义类。 我知道这是一个不幸的选择,应该重构,但是有什么方法可以明确地引用冲突的类吗?

在C ++中,似乎这样做的方法是使用:: ,而在Java中有一些叫做global ::我如何在C#中做到这一点?

C#还有一个全局(或未命名)命名空间 - 您可以使用global::来访问您的类:

global::Environment 

MSDN上查看更多信息。 另见::运算符。

您也可以为它创建别名:

using myEnv = global::Environment;
using sysEnv = System.Environment;

应该是global::Environment就像在Java中一样

我正在使用的代码有一个名为Environment的类,它不在任何名称空间中

你绝对应该改变它。 或者如果它不是您的代码,请提交错误报告并推迟使用,直到修复错误为止。 不使用命名空间 - 这是绝对禁止的。

(尽管@Oded发布了良好的解决方案。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM