![](/img/trans.png)
[英]Could not load file or assembly Newtonsoft.Json in Docker container, ASP.NET 6
[英]ASP.NET MVC 4 WebAPI PostAsJsonAsync Newtonsoft.Json error
在我的MVC 4 Web API項目中停止工作。 找不到Newtonsoft.Json。 運行此代碼后:
Dim response As HttpResponseMessage = MyHttpClient.PostAsJsonAsync("Api/Test", MyObject).Result
我收到消息錯誤:
System.Net.Http.Formatting.dll中發生了類型為'System.IO.FileLoadException'的未處理異常
附加信息:無法加載文件或程序集“ Newtonsoft.Json,版本= 4.5.0.0,區域性=中性,PublicKeyToken = 30ad4fe6b2a6aeed”或其依賴項之一。 找到的程序集的清單定義與程序集引用不匹配。 (來自HRESULT的異常:0x80131040)
我知道MS現在將其用作默認的JSON序列化程序-並且已被引用。 我嘗試從NuGet更新Newtonsoft.Json,但找不到它; 我找到“ Json.Net”。 所以我用包管理器控制台重新安裝
Update-Package Newtonsoft.Json –Reinstall
但是仍然不起作用。 有人知道為什么會出錯嗎?
似乎您正在使用一些過時的庫,該庫依賴於舊版本的JSON.NET。 您可以嘗試安裝它的特定版本:
Update-Package Newtonsoft.Json -Version 4.5.11
如果此操作告訴您其他軟件包需要較新版本的JSON.NET,那么您將需要通過升級正在使用且取決於JSON.NET 4.5的過時的庫來解決此沖突。
嘗試在<runtime><assemblyBinding>
中的web.config文件中添加此部分:
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="4.5.0.0" />
</dependentAssembly>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.