Gbp*_*bps 0 c# alias types reference
我有两个不同的文件,Foo1.exe和Foo2.dll.
当我尝试在Foo1.exe中使用Foo2.dll中声明的对象时,一切都按预期工作.
当我尝试使用Foo2.dll中Foo1.exe中声明的对象时,所有内容都按预期编译.
但是当我尝试将对象从Foo1.exe传递给Foo2.dll时,Foo1.exe无法编译,因为它的类型与Foo2.dll中的对象冲突,实际上并不存在,但是刚从Foo1.exe引用.
如何使它Foo2.dll可以引用Foo1.exe,但这些类型在编译Foo1.exe时不会导致冲突?
实际的错误消息是 The type Foo in Foo1.cs conflicts with the imported type Foo in Foo2.cs
谢谢你的帮助!
你以某种方式设法让Foo1.exe引用不引用Foo1.exe的Foo2.dll的不同副本.因为C#编译器会阻止你做你想要做的事情 - 这就是创建循环引用.
因此,你的甚至编译的事实是侥幸,你应该尝试不同的方法.
您需要将Foo1.exe和Foo2.dll共有的类隔离到第三个程序集Foo3.dll中,该程序集由两者引用.然后Foo3.dll应该引用既不 Foo1.exe或Foo2.dll.