修复由ILMerge引起的C#.NET中的冲突类型

Ste*_*ley 3 .net c# ilmerge types

我有一个有趣的问题,我想轻松解决.我有一个"库"程序集,在Visual Studio的解决方案中的"客户端"项目和"测试"项目中都被引用.问题是测试项目还引用了客户端项目,我们必须使用ILMerge将库程序集与客户端程序集合并以进行部署.由于库程序集与客户端程序集合并,因此当测试项目尝试构建时,我在最初引用的库程序集和合并程序集中存在的库程序集中的类型都会收到错误.

真正的问题是我们在客户端项目的后期构建步骤中运行ILMerge; 最好的解决方案是将其转移到实际的部署过程中.但是,我们目前的工具将难以实施.

有没有办法告诉.NET该类型可能在多个程序集中并且没关系(考虑到它们实际上是相同的程序集,但只是在一种情况下与另一个程序集合并)?

Ale*_*lex 5

所以,如果我理解正确的话,你的测试项目会引用库和客户端,而这些库又合并了库...因此,在测试的构建时,你得到两个相同库的引用.我认为解决方案是从测试项目中删除库引用,并仅引用客户端,该客户端将包含您需要的所有内容.