无法加载文件或程序集“ Newtonsoft.Json”或其依赖项之一。清单定义与程序集引用不匹配


216

搜索后我尝试过的事情:

  1. 在Web.Config中,对旧版本进行绑定:

    <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.1.0" />
    </dependentAssembly>
    
  2. 编辑我的.csproj文件,以确保只有一个Newtonsoft参考

    <Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
       <HintPath>..\packages\Newtonsoft.Json.6.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
       <SpecificVersion>False</SpecificVersion>
       <Private>True</Private>
    </Reference>
    
  3. 在我的计算机上搜索每个Newtonsoft.Json.dll并删除每个非6.0.1版本并删除我的temp文件夹的内容

  4. 在nuget Manager控制台中修复/重新安装软件包

它可以成功构建,但是在转到站点时出现错误。

编辑

好的,所以我尝试像每个nuget软件包一样重新安装,似乎已添加回4.5版本的newtonsoft.json.dll,但我遇到了相同的错误。我项目的目标框架是.NET 4.5.1,这是我现在得到的堆栈跟踪:

“ /”应用程序中的服务器错误。

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

说明:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中起源的更多信息。

异常详细信息:System.IO.FileLoadException无法加载文件或程序集Newtonsoft.Json或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(从HRESULT异常:0x80131040

源错误:

当前Web请求的执行期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来标识有关异常的来源和位置的信息。

程序集加载跟踪:以下信息有助于确定为什么Newtonsoft.Json无法加载程序集。

=== Pre-bind state information ===
LOG: DisplayName = Newtonsoft.Json
(Partial)
WRN: Partial binding information was supplied for an assembly:
WRN: Assembly Name: Newtonsoft.Json | Domain ID: 2
WRN: A partial bind occurs when only part of the assembly display name is provided.
WRN: This might result in the binder loading an incorrect assembly.
WRN: It is recommended to provide a fully specified textual identity for the assembly,
WRN: that consists of the simple name, version, culture, and public key token.
WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue.
LOG: Appbase = file:///c:/users/user/documents/visual studio 2013/Projects/foo/bar/
LOG: Initial PrivatePath = c:\users\user\documents\visual studio 2013\Projects\foo\bar\bin
Calling assembly : (Unknown).
 ===
LOG: This bind starts in default load context.
LOG: Using application configuration file: c:\users\user\documents\visual studio 2013\Projects\foo\bar\web.config
LOG: Using host configuration file: C:\Users\user\Documents\IISExpress\config\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///c:/users/user/documents/visual studio 2013/Projects/foo/bar/bin/Newtonsoft.Json.DLL.
LOG: Using application configuration file: c:\users\user\documents\visual studio 2013\Projects\foo\bar\web.config
LOG: Using host configuration file: C:\Users\user\Documents\IISExpress\config\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Redirect found in application configuration file: 4.5.0.0 redirected to 6.0.1.0.
LOG: Post-policy reference: Newtonsoft.Json, Version=6.0.1.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///c:/users/user/documents/visual studio 2013/Projects/foo/bar/bin/Newtonsoft.Json.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Major Version
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.

堆栈跟踪:

[FileLoadException: Could not load file or assembly 'Newtonsoft.Json' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]

[FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=6.0.1.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0
       System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +34
       System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +152
       System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection) +77
       System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +16
       System.Reflection.Assembly.Load(String assemblyString) +28
       System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +38

[ConfigurationErrorsException: Could not load file or assembly 'Newtonsoft.Json, Version=6.0.1.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +752
       System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +218
       System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +130
        System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +170
       System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +91
       System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) +285
       System.Web.Compilation.BuildManager.ExecutePreAppStart() +153
       System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516

[HttpException (0x80004005): Could not load file or assembly 'Newtonsoft.Json, Version=6.0.1.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9913572
       System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
       System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18408

2
好的,我想我现在可以开始工作了。我删除了机器上所有不是我可以找到的最新版本的Newtonsoft.Json.dll,确保在NuGet中拥有最新版本,并进行构建,并确保它是bin文件夹中的最新版本,并且我将更改保留在web.config和.csproj中。现在我要处理另一个错误,因此它必须可以工作……
noobieDev 2014年

1
将答案添加到您的问题中,以便人们可以看到它已解决?并将其标记为解决方案
PerHornshøj-Schierbeck2014年

2
即使在今天(2016年3月1日),我也正在使用8.0.2版的某个版本。它正在尝试加载6.0.0版。我的解决方案中没有文件引用6.0.0。没有6.0.0版本。.dll在我的解决方案区域中的任何地方。我的计算机上有许多不同版本的newtonsoft.json.dll副本,它们被已安装的我不想弄乱的第三方软件使用。除了删除所有这些副本之外,我还尝试了整个线程中提到的所有解决方案,但没有任何效果。
沙威

1
当我将一个项目的引用添加到另一个项目时,我也遇到了newtonsoft-json的错误消息,但是在解决了两个问题的相同.Net Framework之后,项目中的.Net Framework有所不同。但是我不明白为什么框架错误消息显示与newtonsoft-json相关的错误,而不是框架错误消息。
Sameer

1
在所有项目中安装相同版本的Newtonsoft.Json,即使他们没有使用它。
rubStackOverflow

Answers:


274

为了解决这个问题,我通过运行以下命令并检查结果来确保我的所有项目都使用相同的版本:

update-package Newtonsoft.Json -reinstall

而且,最后我从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软件包都是相同版本,则可以这样指定版本:

update-package Newtonsoft.Json -version 6.0.0 -reinstall

17
只是运行reinstall命令对我有用。我不需要修改web.config。
基思

4
我只需要添加<dependentAssembly>标记即可摆脱此错误。
NicklasMøllerJepsen 2015年

3
我必须提供-version,但省略-reinstall标志以使其在我的情况下有效。
2015年

1
我正在使用最新的版本9.0.1,但显示相同的错误。然后,我检查了csproj文件中的版本,它是9.0.0.0,将其添加到我的web.config中,问题已解决。1.确保csproj中的版本与web.config中的版本相同。2.注意版本号,当实际版本为x.0.0.0时,它可以说x.0.1,x可以为6或9或任何其他值。 。
尤金(Eugene)2016年

7
需要注意的是运行在VS2017的命令,你可以去工具- > NuGet包管理器- >软件包管理器控制台
罗斯

83

我正在使用Newtonsoft.Json v6.0.3,但这是我必须在Web.config文件中执行的操作:

<dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="6.0.0.0" />
</dependentAssembly>

请注意,即使我使用的是6.0.3,也必须输入 newVersion="6.0.0.0"

在我的packages.config文件中,我有:

<package id="Newtonsoft.Json" version="6.0.3" targetFramework="net45" />

1
只是说明,我尝试卸载/删除/删除所有与Newtonsoft.Json有关的内容,然后使用Nuget重新安装它,但仍收到上述错误。直到进行了我提到的更改后,我才能够使它正常工作。
CraigV

我遇到了此问题,并使用了程序集绑定日志查看器来帮助诊断。程序集活页夹将v6.0.3 Newtonsoft.Json.dll报告为v6.0.0.0,因此当我将其配置为6.0.3时重定向将失败。
杰森·史洛克姆

“注释”行对我有帮助。我最初在bindingRedirect中有9.0.1.19813作为newVersion,因为DLL就是这么说的。这就是我现在所拥有的:<Reference Include =“ Newtonsoft.Json,Version = 9.0.0.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed,processorArchitecture = MSIL”> <SpecificVersion> False </ SpecificVersion> </ Reference> <dependentAssembly> <assemblyIdentity name =“ Newtonsoft.Json” culture =“ neutral” publicKeyToken =“ 30ad4fe6b2a6aeed” /> <bindingRedirect oldVersion =“ 0.0.0.0-9.0.0.0” newVersion =“ 9.0.0.0” /> </ dependentAssembly>
Mark Seefeldt

62

在确保我的计算机在所有位置上都具有相同的版本并且我的项目都指向相同的参考路径后,我尝试了以下操作。我还确保了旧版本的绑定是它们的绑定,并绑定到了我拥有的dll的当前版本。

我在具有严格框架的环境中工作,框架团队经常使用不同的dll破坏版本控制。

我解决此问题的方法是在Visual Studio(2013)中运行程序包管理器控制台。从那里我运行以下命令:

update-package Newtonsoft.Json -reinstall

其次是

update-package Newtonsoft.Json

这经历并更新了我的所有配置文件和相关项目文件。强制它们全部使用相同版本的dll。最初是4.5版,然后再次进行更新以获取最新版本。


是更新为我解决了该问题。我的项目已更新为Newtonsoft 7.0版。
id.ot

为我工作。完成此操作后,请务必注意以确保package.config和web.config文件具有匹配的版本。
TheValyreanGroup '17

从NuGet软件包管理器控制台完成后为我工作,谢谢!
Kbdavis07

25

我有相同的错误消息,就像您提到的,这是由于引用了不同版本的Newtonsoft.Json.dll所致。

我的MVC解决方案中的某些项目将NuGet软件包用于该dll的版本4。

然后,我添加了一个NuGet程序包(在我的情况下为Salesforce),该程序包带来了Newtonsoft.Json版本6,该程序包是对其中一个项目的依赖。那就是引发我问题的原因。

为了清理问题,我使用了NuGet程序包管理器中的“更新”部分作为解决方案(在“工具”菜单上或在解决方案上单击鼠标右键)来更新整个解决方案中的Json.Net包,因此对于所有项目而言,它都是相同的版本。

之后,我只是检查了App Config文件,以确保所有绑定重定向行都将转到我选择的版本,如下所示。

<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />

如果DLL对同一MVC应用程序的不同版本的Newtonsoft.Json具有依赖性,该怎么办?这就是我被困住的地方。
杰里米·雷·布朗

使用NuGet软件包管理器中的Consolidate选项可确保版本不会分开。
niico

17

好的,我想我现在可以开始工作了。我删除了机器上所有不是我可以找到的最新版本的Newtonsoft.Json.dll,确保在NuGet中拥有最新版本,并进行构建,并确保它是bin文件夹中的最新版本,并且我将更改保留在web.config和.csproj中。现在,我遇到另一个错误,因此它必须正常工作。


2
您如何找到机器上的所有位置?
obaylis

在通过团队基础服务器将项目获取到我的PC时,我也遇到了错误。我在解决方案中添加了newtonsoft的引用。它不起作用。然后我通过nuget软件包管理器安装了json.net(newtonsoft.json)。工作正常。
Mohammad Sadiqur Ra​​hman

它位于bin文件夹文件名中-Newtonsoft.Json.dll删除此文件并重新安装软件包,或者使用NuGet-Solution安装更低版本并重新安装正确的版本
妈妈

7

通过在我的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>

但是,当然,您需要在程序包管理器控制台中执行以下操作,以确保已更新或版本正确:

update-package Newtonsoft.Json -reinstall

4

我已经尝试过奥列格(Oleg)的步骤,而这些步骤也适用于我的情况。

脚步:

  1. update-package Newtonsoft.Json -reinstall在程序包管理器中运行。

  2. 删除您bin通过启用查看隐藏文件和删除bin文件夹。

  3. 关闭您的Visual Studio,然后重新打开它。

  4. 现在再次运行您的项目。我相信应该没问题!


4

您可以通过在web.config文件中添加以下几行来解决此问题。

 <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

3

就我而言,这只是一个问题:

Tools -> NuGet Package Manager -> Package Manager Settings -> Clear Cache

问题是当我重新映射一个TFS文件夹时引起的。


3

真正帮助我的是关闭Resharper构建并在项目上使用VisualStudio Re-Build选项。


你是怎么做到的?
Naomi

1
在Resharper的选项中:工具-> ReSharper构建->构建引擎-选择“ Visual Studio”
Shaulian

我安装了一个试用版(大约一个月前),然后我也禁用了该扩展。我没有在“工具”中看到它,所以希望我没事。
Naomi

3

从工具>> NuGet软件包管理器>>管理软件包以解决方案更新Newtonsoft.Json所有解决方案到最新版本


2

如果您正在使用某种形式的颠覆:删除项目并重新下载它,它对我有用:S


很长一段路要走,但是我不得不这样做,因为没有其他解决方案对我
有用

2

我在引用MVC 5项目的测试项目中遇到了相同的问题。在与MVC 5项目合并后,发生了这种情况。我通过安装Visual Studio 2012米的更新说明固定它这里在安德烈的响应。

  • 在您的Visual Studio中,转到
    1. 工具>扩展和更新
    2. 在左侧的手风琴列表中选择“更新”。
    3. 选择“产品更新”。
    4. 更新到最新版本

尽管此链接可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。如果链接的页面发生更改,仅链接的答案可能会失效
abarisone 2015年

这个问题解决了我的问题,谢谢!我安装了8.0.1版,直到我更新到VS2013更新5
Devin Prejean

2

我不知道为什么,但是就我而言,即使我从项目中删除bin文件夹,在构建项目时它也会复制newtonsoft.json的旧版本,我也从packages文件夹复制了新版本的dll,并且现在可以解决。


我有一个类似的问题。在我的解决方案中,我有一个测试项目。测试项目的bin中的版本为9,但是我正在测试的项目的版本为12。我将版本12从受测试的bin文件夹中的项目复制到测试的bin文件夹中。
乔什·杰伊


2

好吧,所以我想要做的就是将我的答案添加到这个长长的列表中,而不是创建一个重复的问题...

如果要在2019年使用.NET Core 3.0(此时为预览)获得此解决方案,则解决方案是确保所有项目都针对相同的.NET Core版本(在我的情况下为3.0)。我想我在解决方案中有一个针对2.1的项目,其余的都是2.2,所以我可能会坚持使用2.2 ...

我什至没有在任何项目中安装Newtonsoft.Json,自然地将其添加到其中并不能解决问题。

如果您的解决方案中包含.NET Standard类库或w / e,则它们不必是同一版本,尽管它们可能应该是最新的。例如,我的.NET Standard类库在2.2上,因为还没有.NET Standard 3.0。


1

没有一个答案,包括选中的答案,对我没有用。

解决方案要简单得多。我首先从BUS层中删除了引用。然后从项目中删除dll(以确保已消失),然后从nuget packeges重新安装JSON.NET。而且,棘手的部分是“将其关闭并重新打开”。

我刚刚重新启动了Visual Studio,就可以了!

因此,如果您尝试了所有可能的方法,但仍无法解决问题,只需尝试重新打开Visual Studio,这可能会有所帮助。


2
我认为简单就是讽刺。
Worthy7年


1

我通过在bin文件夹中删除较低版本的Newtonsoft.json.dll来解决它,并添加了Newtonsoft.json.dll V6.0.0.0并删除了以下web.config元素

<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
    <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="5.0.8"/>
</dependentAssembly>

1

我在dotnet core上遇到了同样的问题,并设法通过清除NuGet缓存来解决它。

打开电源壳,然后输入以下命令。

dotnet nuget locals all --clear

然后,我关闭了Visual Studio,再次将其打开,然后在“程序包管理器控制台”中输入以下命令:

Update-Package

NuGet现在应该还原所有软件包,并再次填充nuget缓存。

之后,我能够在Linux容器中构建并启动我的dotnet核心webapi。


1

解决了我的问题的解决方案是

转到引用->右键单击Newtonsoft.json--转到属性并检查版本

这个相同的版本应该在

<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-YourDllVersion" newVersion="YourDllVersion" />
</dependentAssembly>

0

简单的步骤。(1)在程序包管理器中运行“ update-package Newtonsoft.Json -reinstall”。

(2)通过启用查看隐藏文件并删除bin文件夹来删除bin。

(3)关闭视觉工作室,然后重新打开。

(4)现在再次运行您的项目。我相信应该没关系


0

我遇到此问题是因为我有:项目A(桌面.exe)引用项目B(可移植.dll)。A和B具有不同版本的JSON.Net,因此存在加载程序冲突。一旦我使所有版本的JSON.net都相同,它就会起作用。(实际上,这是上述某些解决方案的作用-我只是在说出它为什么起作用的原因)


0

最近,我和一个较旧的项目为此而苦苦挣扎。

在检查bin文件夹中实际存在的dll版本之后,我设法找到了问题所在。

我有一个后生成脚本,该脚本将依赖程序集从dll库文件夹复制到bin文件夹。从nuget开始的常见设置。

因此,每次构建后构建脚本时,都会用旧版本替换正确版本的Json.net。


0

我遇到了完全相同的问题,Visual Studio 13默认库对我来说是4.5,所以我有2个解决方案,其中一个是在webconfig文件中删除对此的引用。那是万不得已的,它确实有效。

错误消息指出此位置/Projects/foo/bar/bin/Newtonsoft.Json.DLL中存在问题。DLL在哪里!一个基本的属性检查告诉我它是4.5.0.0或类似,所以我将webconfig更改为查找4.5并使用4.5。


0

这些选择对我都不起作用,最终还是成功了。

测试>测试设置> * .testrunco​​nfig

我必须添加新行

<DeploymentItem filename="packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll" />

确保路径和版本对于您的设置是正确的。


0

我遇到过同样的问题。我创建了一个Web api项目,然后将其从.net 4.5.1升级到.net 4.6.1。关闭IDE,停止IIS并删除C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ dir的内容解决了此问题。

高温超导


0

通过刷新NuGet软件包或在项目上执行“清理”,对我来说,此问题没有解决。通过手动清除“ obj”文件夹解决了该问题。


0

这是我针对此问题的解决方案,请确保appconfig或packageconfig中的版本号与参考中的参考版本相同。看这里


0

在我的情况下,出现错误消息是“ 6.0.0版 ”,但此版本无法安装,因此我在项目中安装了“ 6.0.1版 ”并解决了我的问题。

install-package Newtonsoft.Json -Version 6.0.1 -Project MyProjectX
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.