我在两个不同的程序集 ClassLibrary1 和 ClassLibrary2 的命名空间 Phoenix 下有一个类 MyClass。ClassLibrary2 是 ClassLibrary1 中的引用。现在,在我的 ClassLibrary1 中,无论我使用了 MyClass 类型,它都会向我发出与导入类型冲突的警告。如何在不使用 pragma 指令抑制警告的情况下解决此问题?
问问题
1733 次
1 回答
2
通过进入引用本身的属性,为项目中的ClassLibrary2
引用提供别名(默认的“全局”除外) 。ClassLibrary1
如果您想使用 ClassLibrary1 版本,这将立即消除警告。
现在,每当您想从 ClassLibrary2 dll 中访问某些内容时,您都需要将其放在您的类代码之上:
extern alias <yourAliasName>;
using MyClassOther = yourAliasName::Phoenix.MyClass;
如果您想阻止引用其他类的现有代码ClassLibrary1
工作,您可以保留全局别名,只需向引用添加另一个别名。这样,您只需要在实际使用MyClass
. 然后,您将需要在(希望)少得多的情况下完全限定使用情况。
于 2013-10-11T15:18:14.570 回答