Skip to content

未能加载文件或程序集“Newtonsoft.Json”或它的某一个依赖项

🏷️ C# JSON

未能加载文件或程序集“Newtonsoft.Json”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

未找到 Newtonsoft.Json 包导致的。

但是貌似只有我的本地环境有这个问题,删除后重新获取过一次代码仍然有这个问题,今天删除后重新再获取反而又没问题了。 =.=|||

后来通过 NuGet 做了一次将 Newtonsoft.Json 包升级到 12.0.1 再降到 9.0.1 的操作之后,再编译生成就好了。

怀疑是项目的工程文件有问题导致的。因为做了上述操作后,发现工程文件有如下改动:

修改前

xml
    <Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
    </Reference>

修改后

xml
    <Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
      <HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
      <Private>True</Private>
    </Reference>

分析器错误

分析器错误
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。

分析器错误消息: 未能加载类型“XX.XXX.WebApp.Global”。

源错误:

行 1: <%@ Application Codebehind="Global.asax.cs" Inherits="XX.XXX.WebApp.Global" Language="C#" %>

升级或降级包之后代码未重新编译生成导致的。