ファイルまたはアセンブリ 'Newtonsoft.Json'またはその依存関係の1つを読み込めませんでした。マニフェストの定義がアセンブリ参照と一致しません


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参照が1つだけになるようにします。

    <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以外のすべてのバージョンを削除して、一時フォルダーの内容を削除します

  4. Nuget Managerコンソールでパッケージを修復/再インストールします

ビルドは成功しますが、サイトにアクセスするとエラーが発生します。

編集

わかりましたので、すべてのnugetパッケージのように再インストールしようとしましたが、newtonsoft.json.dllのバージョン4.5が追加されたようですが、同じエラーが発生します。私のプロジェクトのターゲットフレームワークは.NET 4.5.1で、ここに私が今得ているスタックトレースがあります。

「/」アプリケーションでのサーバーエラー。

ファイルまたはアセンブリNewtonsoft.Jsonまたはその依存関係の1つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULTからの例外:0x80131040

説明:現在のWebリクエストの実行中に未処理の例外が発生しました。エラーの詳細と、コードのどこで発生したかについては、スタックトレースを確認してください。

例外の詳細::System.IO.FileLoadExceptionファイルまたはアセンブリNewtonsoft.Jsonまたはその依存関係の1つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(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に残しました。今、私は別のエラーに
遭遇し

1
質問への回答を追加して、他の人がそれが解決されたことを確認できるようにしますか?そして、解決策として、それをマーク
パーHornshøj-Schierbeck

2
今日(2016年3月1日)でも、バージョン8.0.2でこの問題のいくつかのバージョンが発生しています。バージョン6.0.0をロードしようとしています。私のソリューションには6.0.0を参照するファイルがありません。バージョン6.0.0はありません。ソリューション領域のどこかに.dllがあります。私のコンピューターには、さまざまなバージョンのnewtonsoft.json.dllのコピーがたくさんあります。これらのコピーは、インストールしたいサードパーティ製のソフトウェアで使用されており、いじくり回したくありません。これらのコピーをすべて削除する以外に、このスレッド全体で言及されているすべての解決策を試しましたが、何も機能しませんでした。
Shavais 2016年

1
あるプロジェクトの参照を別のプロジェクトに追加したときにも、このnewtonsoft-jsonのエラーメッセージが表示されましたが、両方の問題で同じ.Net Frameworkを修正した後、プロジェクトの.Net Frameworkが異なりました。しかし、なぜフレームワークのエラーメッセージではなく、newtonsoft-json関連のエラーが表示されるのか理解できませんでした。
Sameer

1
すべてのプロジェクトに同じバージョンのNewtonsoft.Jsonをインストールします(使用していない場合でも)。
rubStackOverflow

回答:


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
再インストールコマンドを実行するだけでうまくいきました。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と表示されます。 。
ユージーン

7
VS2017でコマンドを実行するには、ツール-> Nugetパッケージマネージャー->パッケージマネージャーコンソール
Rose

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 14

この問題が発生し、アセンブリバインディングログビューアを使用して診断しました。アセンブリバインダーはv6.0.3 Newtonsoft.Json.dllをv6.0.0.0と報告するため、6.0.3として構成した場合、リダイレクトは失敗します。
Jason Slocomb 14

「メモ」の行は私を助けます。DLLが言っていることから、私はbindingRedirectのnewVersionとして最初は9.0.1.19813を持っていました。これは私が今持っているものです:<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>
マークゼーフェルト

62

私のコンピューターがすべての場所で同じバージョンであること、およびプロジェクトがすべて同じ参照パスを指していることを確認した後で、次のことを試しました。私はまた、古いバージョンのバインディングが彼らのものであり、私が持っていたdllの現在のバージョンにバインドされていることを確認していました。

私は厳密なフレームワークのある環境で作業しており、フレームワークチームはさまざまなdllでバージョン管理を混乱させることがよくあります。

この問題を修正した方法は、Visual Studio(2013)内でパッケージマネージャーコンソールを実行することでした。そこから次のコマンドを実行しました。

update-package Newtonsoft.Json -reinstall

に続く

update-package Newtonsoft.Json

これで、すべての構成ファイルと関連するプロジェクトファイルが更新されました。それらすべてを同じバージョンのDLLに強制します。これは最初にバージョン4.5でしたが、最新のものに更新する前に再度更新されました。


それは私のために問題を解決したアップデートでした。私のプロジェクトはNewtonsoftバージョン7.0に更新されました。
id.ot 2015

私のために働いた。これを行った後、package.configファイルとweb.configファイルのバージョンが一致していることを確認してください。
TheValyreanGroup 2017年

NuGetパッケージマネージャーコンソールからの作業でうまくいきました。ありがとうございます。
Kbdavis07

25

私は同じエラーメッセージを受け取りました、そしてあなたが言ったように、それは参照されているNewtonsoft.Json.dllの異なるバージョンが原因でした。

私のMVCソリューションの一部のプロジェクトでは、そのdllのバージョン4のNuGetパッケージを使用していました。

次に、プロジェクトの1つへの依存関係としてNewtonsoft.Jsonバージョン6をもたらすNuGetパッケージ(私の場合はSalesforce用)を追加しました。それが私の問題の引き金となったのです。

整理するために、ソリューションのNuGetパッケージマネージャーの[更新]セクション([ツール]メニューまたはソリューションを右クリックして)を使用して、ソリューション全体でJson.Netパッケージを更新し、すべてのプロジェクトで同じバージョンになるようにしました。

その後、App Configファイルをチェックして、バインディングリダイレクト行が以下のように選択したバージョンになっていることを確認しました。

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

DLLが同じMVCアプリの異なるバージョンのNewtonsoft.Jsonに依存している場合はどうなりますか?これは私が行き詰まっているところです。
Jeremy Ray Brown

NuGetパッケージマネージャーの[統合]オプションを使用して、バージョンがバラバラにならないようにします。
niico

17

わかりました、私は今それを働かせたと思います。私が見つけた最新バージョンではないマシン上のすべてのNewtonsoft.Json.dllを削除し、NuGetに最新バージョンがあることを確認し、それをビルドして、それがbinフォルダー内の最新バージョンであることを確認しました。変更をweb.configと.csprojに残しました。現在、別のエラーが発生しているので、正常に機能しているはずです。


2
マシン上のすべての場所を見つけるにはどうしましたか?
obaylis 2016

チームファンデーションサーバーによってプロジェクトをpcに取得するときにもエラーが発生しました。ソリューションにnewtonsoftの参照を追加しました。動作しませんでした。その後、nugetパッケージマネージャーを介してjson.net(newtonsoft.json)をインストールします。正常に動作しています。
Mohammad Sadiqur Ra​​hman 2016

binフォルダーのファイル名の中にあります-Newtonsoft.Json.dllこのファイルを削除してパッケージを再インストールするか、NuGet-Solutionを使用して下位バージョンをインストールし、正しいバージョンを再インストールします
maddy

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オプションを使用することでした。


どうやったの?
直美

1
Resharperのオプション:ツール-> ReSharperビルド->ビルドエンジン-「Visual Studio」を選択
Shaulian

試用版をインストールしたのはしばらく前(約1か月と思います)で、拡張機能も無効にしました。ツールには表示されないので、うまくいけば大丈夫です。
直美

3

すべてのソリューションのツール>> NuGet Package Manager >>ソリューションのアップデート用パッケージの管理Newtonsoft.Jsonから最新バージョンに


2

なんらかのsubversionで作業している場合:プロジェクトを削除して再ダウンロードすると、私にとってはうまくいきました:S


長い道のりですが、他の解決策がうまく
いか

2

MVC 5プロジェクトを参照するテストプロジェクトでも同じ問題が発生しました。これは、MVC 5プロジェクトとマージした後に発生しました。アンドレの応答でここで説明されているよう、Visual Studio 2012の更新をインストールすることで修正しました。

  • あなたのビジュアルスタジオで
    1. [ツール]> [拡張機能とアップデート]
    2. 左側のアコーディオンリストで[更新]を選択します。
    3. 「製品の更新」を選択します。
    4. 最新バージョンに更新

このリンクで質問に答えることができますが、回答の重要な部分をここに含め、参照用のリンクを提供することをお勧めします。リンクされたページが変更された場合、リンクのみの回答が無効になる可能性があります
abarisone

私の問題はこの解決策のおかげで修正されました!バージョン8.0.1をインストールしましたが、VS2013 update 5に更新するまで機能しませんでした
Devin

2

理由はわかりませんが、私の場合、プロジェクトからbinフォルダーを削除しても、プロジェクトをビルドすると、古いバージョンのnewtonsoft.jsonがコピーされ、新しいバージョンのdllがパッケージフォルダーからコピーされ、今のところ解決されます。


同様の問題がありました。私のソリューションでは、テストプロジェクトがあります。テストプロジェクトはビンにバージョン9を取得していましたが、テストしているプロジェクトのバージョンは12でした。バージョン12をテスト中のプロジェクトのbinフォルダーからテストのbinフォルダーにコピーしました。
ジョシュジェイ


2

了解しました。ここで私の答えをこの長いリストに追加するのではなく、重複する質問を作成することです...

.NET Core 3.0(現時点ではプレビュー)を使用して2019年にこれを取得している場合、解決策は、すべてのプロジェクトが同じ.NET Coreバージョン(私の場合は3.0)をターゲットにしていることを確認することです。ソリューションに2.1をターゲットとするプロジェクトが1つあり、残りが2.2だったので、おそらく2.2でスタックできた可能性があります...

私はどのプロジェクトにもNewtonsoft.Jsonをインストールしていません。当然、プロジェクトに追加しても問題は解決しませんでした。

.NET標準クラスライブラリまたはw / eがソリューションに含まれている場合、それらは同じバージョンである必要はありませんが、おそらく最新のものでなければなりません。たとえば、.NET Standard 3.0はまだないので、私の.NET Standardクラスライブラリは2.2にあります。


1

チェックされたものを含め、どの回答も私にとってはうまくいきませんでした。

解決策ははるかに簡単でした。まず、BUSレイヤーから参照を削除しました。次に、プロジェクトからdllを削除し(削除されたことを確認するため)、nugetパッケージからJSON.NETを再インストールしました。そして、トリッキーな部分は、「それをオフにしてから再びオンにする」ことでした。

ビジュアルスタジオを再起動したところ、うまくいきました。

そのため、できる限りのことを試みても問題を解決できない場合は、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コアで同じ問題が発生し、NuGetキャッシュをクリアすることで解決できました。

PowerShellを開き、次のコマンドを入力します。

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)隠しファイルの表示を有効にしてビンフォルダーを削除することにより、ビンを削除します。

(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つの解決策があり、1つは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の内容を削除すると、問題が修正されました。

HTH


0

この問題は、NuGetパッケージを更新するか、プロジェクトで「クリーン」を実行しても解決されませんでした。「obj」フォルダを手動でクリアすることで解決しました。


0

これがこの問題の私の解決策です。appconfigまたはpackageconfigのバージョン番号が参照の参照バージョンと同じであることを確認してください。こちらをご覧ください


0

私の場合、エラーメッセージは「バージョン6.0.0」でしたが、このバージョンはインストールできません。プロジェクトに「6.0.1バージョン」をインストールして問題を解決しました。

install-package Newtonsoft.Json -Version 6.0.1 -Project MyProjectX
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.