c# - 访问另一个命名空间内的同名全局类

标签 c# namespaces

在我的项目中,我有一个静态类 Const.cs 用于存储 Const 变量。
例如。

public static class Const
{
  public const string EXAMPLE= "Example";
  .........
  .........
  // blah blah..
}

它是一个全局文件,不属于任何命名空间。由于某些特定要求,我必须使用 创建另一个 Const 类。同名 “Const”,但这次在其他一些命名空间下(比如 Namespace1.Class1.cs )
public class Namespace1.Class1
{
  string test = Const.EXAMPLE;  // this line throws error by compiler

  public static class Const
  {
    ......
    ......
  }
}

问题是:我在 Namespace1.Class1.cs 中使用 Const.strExample 常量

所以存在歧义问题。编译器无法识别 Const.str 示例 正如我宣布的第二个 常量 类内 Namespace1.Class1.cs .
有没有办法以某种方式解决这个问题并保留相同的名称,或者我不能这样做?

请指教。

最佳答案

您可以使用 global命名空间如下。

namespace Namespace1
{
    public class Class1
    {
      string test = global::Const.EXAMPLE;
      string test2 = Namespace1.Class1.Const.EXAMPLE;

      public static class Const
      {
        ......
        ......
      }
    }
}

关于c# - 访问另一个命名空间内的同名全局类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20560672/

相关文章:

c# - 在 XML 命名空间中插入和删除节点

c# - 使用 Linq 进行 ObjectDataSource : How to transform datetime using ToShortTimeString?

c# - 在 C# 中打开程序时检查在线更新

c# - 我想在 winforms 列表框控件中检测一个项目双击。 【如何处理点击空白区域?】

C++ 嵌套命名空间别名可能吗?

ruby-on-rails-3 - rails 和命名空间模型问题

c# - System.Array 不包含 ToArray 的定义

c# - 如何连接到已经打开的浏览器?

c#:命名空间优先级/优先级?有2个同名类(class)

ruby - Ruby 中的命名空间要求