我的一个项目使用引用SQLite的Elmah。 Elmah是针对.Net版本1.0.44.0
的SQLite构建的 好吧,我正在尝试一些64位的东西(我的开发盒是32位)所以我需要64位版本的SQLite for .Net。我抓住了它的最新版本(当时1.0.51.0)并使用他们的安装程序来安装它。 对于我的32位项目,我更新了对System.Data.SQLite的引用以指向更新的版本。 一旦我意识到自己的错误,我就将其卸载并抓取了相应的原始版本,并将我的引用指向1.0.44.0现在,当我构建时,我会收到有关同一依赖程序集的不同版本的警告。点击它询问我是否要编辑我的app.config并插入:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Data.SQLite" publicKeyToken="DB937BC2D44FF139" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.0.51.0" newVersion="1.0.51.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
嗯..我的系统上没有安装或存在1.0.51.0了!冲突在哪里?为什么视觉工作室认为它存在于某个地方?我检查了GAC,并且在任何地方都没有System.Data.SQLite。
我想摆脱这个恼人的警告。 我在同一个解决方案中有另一个项目也引用了SQLite,但我从未更新过对新版本的引用(后来又没有更改引用)..它一直引用1.0.44.0。该项目根本没有抱怨......
答案 0 :(得分:0)
使用ildasm.exe查看应用和程序集中的清单。
答案 1 :(得分:0)