我的朋友给了我一个在Xamarin Studio中创建的项目。当我尝试运行项目时,我收到一些与冲突的程序集引用相关的警告。
我使用AsmSpy工具检查哪些引用存在冲突,并得到以下输出:
Detailing only conflicting assembly references.
Reference: Newtonsoft.Json
6.0.0.0 by Akavache <-- this one is Green
6.0.0.0 by Akavache.Sqlite3 <-- this one is Green
8.0.0.0 by MyAppName <-- this one is Red
Reference: Splat
1.6.0.0 by Akavache
1.6.0.0 by Akavache.Sqlite3
1.6.2.0 by MyAppName
我从未与Xamarin Studio合作过,而且我对这个主题缺乏一些了解。如何更改引用以停止此警告?
答案 0 :(得分:2)
您应该可以使用程序集重定向来突破&#39;所有程序集都使用特定版本。
(您需要相应地更新名称,公钥和版本)
<dependentAssembly>
<assemblyIdentity name="Akavache" publicKeyToken="1234567890" culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
</dependentAssembly>
这些必须位于运行时节点中的* .config文件中;
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">