Geo*_*uer 7 .net assembly-resolution .net-assembly assembly-binding-redirect
我刚刚在我的项目中升级了log4net,并且遇到了一些程序集绑定问题,因为一个组件依赖于旧版本的log4net.
该组件预期的版本是
log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821
Run Code Online (Sandbox Code Playgroud)
我的版本是
log4net, Version=1.2.12.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a
Run Code Online (Sandbox Code Playgroud)
如何正确解析此绑定(只有一个api差异,此组件无关紧要).
我已经尝试将以下内容添加到我的web.config但它不起作用.
<dependentAssembly>
<assemblyIdentity name="log4net" publicKeyToken="1b44e1d426115821" culture="neutral" />
<bindingRedirect oldVersion="1.2.10.0" newVersion="1.2.12.0" />
</dependentAssembly>
Run Code Online (Sandbox Code Playgroud)
我不相信可以使用不同的公钥执行绑定重定向到程序集.
您需要下载使用旧密钥签名的log4net v1.2.12.0版本(http://psg.mtu.edu/pub/apache//logging/log4net/binaries/log4net-1.2.12- bin-oldkey.zip)
然后更新您的代码,替换引用:
log4net, Version=1.2.12.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a
同
log4net, Version=1.2.12.0, Culture=neutral, PublicKeyToken=1b44e1d426115821
在相关说明中:您可以在重定向中放置版本范围oldVersion="0.0.0.0-1.2.11.0",以增加灵活性.
| 归档时间: |
|
| 查看次数: |
10304 次 |
| 最近记录: |