在搞在线聊天室的时候用到了SignalR 1.1.4,依赖于Newtonsoft.Json 4.5.0.0。
而我另外的dll又依赖Newtonsoft.Json 6.0.0.0
我只引用6.0.0.0的时候提示找不到4.5.0.0的dll,
搜了一下用bindingredirect ,但是搞半天还是报同样的错误,后面发现是配置写错了。
错误的配置:
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" PublicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
正确的配置:
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
万能的vs编译器木有告诉我,我哪里写错了。
搜这里知道的:http://*.com/questions/3490327/assembly-binding-redirect-does-not-work