11

我试图用 stylecop 正确地设置一些旧代码。它要求将 using 语句放入其中。它对除一个以外的所有人都有效。我已将问题简化为以下代码。

namespace B.C
{
    using System;

    public class Hidden
    {
        public void SayHello()
        {
            Console.WriteLine("Hello");
        }
    }
}

namespace A.B.C
{
    using B.C;

    public class Program
    {
        static void Main(string[] args)
        {
            new Hidden().SayHello();
        }
    }
}

这给出了编译错误错误

“找不到类型或命名空间名称‘隐藏’(您是否缺少 using 指令或程序集引用?)”。

如果我使用 BC 移动;在命名空间 ABC 之上,然后它会正确构建。Hidden 类是由不同的团队开发的,我们不能修改它。

4

2 回答 2

16

由于您在命名空间内A,那么B.C实际上将是A.B.C.

用于global::指定您从根目录查找:

using global::B.C;
于 2012-09-28T11:04:02.197 回答
2

BC 与 ABC 冲突 您需要将 BC 重命名为其他名称或使用global

于 2012-09-28T11:04:36.450 回答