如果在不同的命名空间中有两个相似的类,则如何为类设置默认命名空间

时间:2009-05-13 19:12:10

标签: .net visual-studio namespaces conflict

好的,所以自从进入2.5版以来,Nunit引起了各种各样的问题,因为他们将静态类引入了nunit.framework命名空间。

如果Rhino.Mocks和其他一些框架也没有使用静态类,那将是一件好事。所以现在如果我升级到2.5,那么使用rhino mocks约束的大多数代码都不会编译。

有没有办法在项目级别配置visual studio / c#编译器,知道当我说时我的意思是Rhino Mocks名称空间?

PS。开源作者,我知道你喜欢流畅的界面,但当他们要与其他框架发生冲突时,请停止使用这些常用词!一些关于lambdas的闭包怎么样你仍然可以做像myVar.Should(be => be.True())?

3 个答案:

答案 0 :(得分:1)

我不知道NUmit上下文但也许别名机制可以帮助你:

namespace N1
{
  class C { }
}

namespace N2
{
    class C { }
}

namespace NamespaceDemos
{
    using C1 = N1.C;
    using C2 = N2.C;
}

答案 1 :(得分:1)

使用文件顶部的using alias directiveIs的非限定引用指向Rhino类型。

using Is = Rhino.Mocks.Constraints.Is;

不幸的是,我认为在项目层面没有办法做到这一点。但这至少比搜索&替换所有参考文献。

答案 2 :(得分:-1)

尝试使用using指令。