【发布时间】:2017-03-03 19:50:22
【问题描述】:
我有一个问题你也许可以解决我想引用两个有点相似的文件,假设它们的名称是 ReferenceA.exe 和 ReferenceB.exe,它们都做类似的事情,
当我尝试使用 C Sharp 编译器(或命令提示符中的 csc)编译它时。
它给了我这个错误:
ReferenceA.exe:错误 CS1704:已导入具有相同简单名称 ReferenceA、Version=1.3.3.3、Culture=neutral、PublicKeyToken=null 的程序集。尝试删除其中一个引用或对其进行签名以并排启用。
ReferenceB.exe:(与先前错误相关的符号位置)
我遇到了这个错误的问题,因为我需要将 ReferenceB 引用到我的项目 WITH ReferenceA
但是,我很想签下他们并肩作战。 你知道怎么做吗?如果是,请回答这个问题。
【问题讨论】:
-
您是否尝试过 Gregor Primar 在以下帖子中所说的内容:stackoverflow.com/questions/14001185/…
-
这在运行时不能很好地结束。一个参考程序集将覆盖另一个参考程序集,因此有人会输。这些程序集需要安装在 GAC 中,以便代码可以在运行时获得所需类型的版本。这需要首先签署它们。使用 Project > Properties > Signing 选项卡很容易做到。使用
extern alias,这样您就可以在一个项目中同时引用它们。或者考虑将需要 B 的代码移到另一个项目 YMMV 中。 -
好的,我会调查一下@HassanAtaUllah