我正在迁移一个用 C++ 编写,有一个 C# 包装器的库。C# 包装器 (LibWrapper
) 有一组带有命名空间的类,例如:
namespace MyNamespace
class MyClass
class MyOtherClass
我的新库LibraryCS
包含了与LibWrapper
相同的命名空间和类名(为了满足用户需求),所以我也有:
namespace MyNamespace
class MyClass
class MyOtherClass
现在迁移已完成,我正在创建一个测试,比较使用这两个库的结果以验证迁移。但是,当我尝试引用MyNamespace.MyClass
时,我会得到编译器错误(预料之中!)说“ MyNamespace.MyClass 在LibWrapper和LibraryCS中都有定义”。有没有什么技巧可以解决这个问题,允许我在同一客户端代码中使用来自不同程序集的具有相同名称的两个类?
或者,有没有其他方法来测试这个问题?
将迁移后的命名空间重命名为像
MyNamespace2
这样的名称当然可以解决问题,但我们被要求不这样做,以便使客户端代码更容易迁移。