【问题标题】:Newtonsoft.Json FileLoadExceptionNewtonsoft.Json FileLoadException
【发布时间】:2014-08-20 21:20:22
【问题描述】:

这个错误快把我逼疯了!!

这是错误信息:

[FileLoadException:无法加载文件或程序集“Newtonsoft.Json”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。 (HRESULT 异常:0x80131040)]

我有一个使用 .NET Framework 4.5.1 的 WebApi 和一个 Web 项目。我的应用程序构建成功,但是当我运行 Web 应用程序时,我收到上面的错误消息。关于这个错误,我已经尝试了很多我在 Google 和 Stackoverflow 上找到的东西,但没有成功。

packages.config - <package id="Newtonsoft.Json" version="6.0.4" targetFramework="net451" />

web.config - <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>

我已尝试删除 Newtonsoft.Json.dll 并重新添加它,但仍然遇到相同的错误。

感谢您在尝试解决此问题时提供的所有帮助。

【问题讨论】:

  • 你是怎么添加这个的?使用 nuget?
  • 你启用fusion logs了吗?
  • 你在使用其他依赖于 json.net 的库吗?
  • DeadlyChambers 不,我使用 aspboilerplate 模板创建了我的项目。
  • John Koemer 我没有启用融合日志。

标签: c# json asp.net-mvc-4 json.net asp.net-web-api2


【解决方案1】:

Newtonsoft.Json 作为默认 MVC/WebAPI 项目的一部分包含在 packages.config 中。

包也包含在包目录中,但由于某种原因,NuGet 包管理器似乎不知道它已安装。

我通过以下方式解决了这个问题:

  1. 右键单击解决方案。选择“管理解决方案的 NuGet 包”。
  2. 选择左侧的“已安装”并检查是否已安装 Json.NET(在我的情况下未安装)。
  3. 如果安装了 Json.NET,查看是否有更新并应用。
  4. 如果未安装Json.Net,选择左侧“在线”,右上角搜索“Newtonsoft.Json”。
  5. 包名称将读取 Json.Net。选择安装按钮,让它完成它的工作。它将修改 web.config 和 packages.config。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 1970-01-01
    • 2014-01-13
    • 2014-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多