隨着微軟日漸重視開源社區的貢獻,微軟在自己的產品中往往也會集成開源的第三方庫。 比如System.Net.Http.Foramatting.dll 就依賴於Newtonsoft.json v4.5. 所以如果你項目的Newtonsoft.json的版本高於v4.5。當調用System.Net.Http.Foramatting庫中關於json的功能就會出現如下異常:
解決方法很簡單:在config文件中加入如下配置,用於替換7.5版本以下的Newtonsoft.json到8.0版本。
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/> <bindingRedirect oldVersion="0.0.0.0-7.5.0.0" newVersion="8.0.0.0"/> </dependentAssembly> </assemblyBinding> </runtime>
該方法同樣適用於其他第三方庫的更新。