2015-09-26 12 views
15

sto affrontando l'errore sottoImpossibile caricare il file o l'assembly 'Newtonsoft.Json, Version = 7.0.0.0

Impossibile caricare il file o l'assembly' Newtonsoft.Json, Version = 7.0.0.0, Cultura = neutro, PublicKeyToken = 30ad4fe6b2a6aeed 'o una delle sue dipendenze . La definizione manifest dell'assembly individuato non corrisponde a e corrisponde al riferimento all'assembly. (Eccezione da HRESULT: 0x80131040)

ho potuto vedere il seguito in Web.config

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

Così ho cambiato in

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

In packeges.config ho potuto vedere il seguito voce

Ma ancora sto affrontando lo stesso problema. Si prega di aiutare

+0

Le ragioni di questo potrebbero essere molte. Primo: controlla l'assemblaggio nella cartella di output e controlla che la versione del file e il nome sicuro corrispondano a quanto ti aspetti. Sospetto che la versione del nome sicuro sia 7.0.0.0, quindi cambia nuovamente bindingRedirect (il nome sicuro e la versione del file potrebbero differire - ha fatto per Newtonsoft.Json 6. *) –

risposta

34

Molte cose possono andare storte e questo messaggio di errore non ti dice nulla.

Ma ancora sto affrontando lo stesso problema.

Forse il modo più semplice sarà provare e reinstallare il pacchetto.

Vai a STRUMENTI> NuGet Package Manager e selezionare Package Manager Console. Eseguire i seguenti due comandi:

uninstall-package newtonsoft.json -force 
install-package newtonsoft.json 

Se viene ancora un errore dopo aver fatto questo, allora che cosa ha funzionato per me alla fine è che ho cancellato la sezione di Json.Net dal mio file config. La reinstallazione la riporta indietro se non è presente e apparentemente è necessario eliminarla. Fino a quando non ci sarà una soluzione normale nel pacchetto stesso, temo che questa fase manuale sia un must. Nel pacchetto di console Manager di nuovo eseguire:

Update-Package –reinstall Newtonsoft.Json 

prendere anche uno sguardo alla vostra .Net version dei progetti nella soluzione.

Questo è il Microsoft solution con lo scarico del progetto.

+0

Anch'io ho avuto un problema con un pacchetto che aveva Newtonsoft .JSON come pre-requisito, e l'attuale installato era 6.x. L'aggiornamento del pacchetto non ha funzionato, ma uinstall/reinstall ha scaricato l'attuale 9.x e ha corretto l'errore. – ajeh

0

il più delle volte questo errore si verifica a causa di diversi assembly dipendenti dalla versione specifica di qualche altro assembly.

la soluzione più semplice è aggiornare tutti i pacchetti che dipendono da Newtonsoft.Json utilizzando il gestore pacchetti nuget.

imposterà automaticamente tutti i file di configurazione nel progetto.

0

Ho ricevuto lo stesso errore e l'ho risolto facendo una 'Pulizia' sulla mia soluzione. Sto usando Newtonsoft.Json in un'app UWP.

0

Grazie @ekostadinov. Sono stato in grado di farlo funzionare con la soluzione di @ekostadinov. Nel mio caso, il modello Web MVC predefinito aveva NewtonSoft JSON versione 6. Avevo aggiunto una libreria di classi e a quello ho installato NewtonSoft JSON versione 9 dal gestore di pacchetti Nuget.

Ho provato a rimuovere il riferimento dal mio progetto Web, i pacchetti config e dipendenze, ma ancora ricevevo errore. Ora, ricevevo un messaggio di errore che diceva impossibile trovare la versione 6 di Newtonsoft JSON. Inizialmente ricevevo un messaggio di errore che diceva impossibile trovare la versione 9 di Newtonsoft JSON

Quindi ho seguito i passaggi di @ekostadinov.

uninstall-package newtonsoft.json -force 
install-package newtonsoft.json 

ho avuto un avvertimento rispetto ad una dipendenza nella console gestore di pacchetti di nota su una dipendenza con la versione di Web.Grease dll. Ma comunque, ha avuto successo.

Solo per doppio controllo, ho eseguito l'ultimo comando accennato nel post sopra

Update-Package –reinstall Newtonsoft.Json 

Correva senza avvisi pure.

Ora, sono in grado di utilizzare la versione 9 in tutti i miei progetti.

0

Ciò può accadere se package.config contiene lo stesso nome di due pacchetti con una versione diversa.

per esempio,

<package id="System.Spatial" version="5.6.2" targetFramework="net45" /> 
<package id="System.Spatial" version="5.6.4" targetFramework="net45" /> 

grazie.

0

Ho avuto lo stesso problema e fare la disinstallazione e reinstallare non ha aiutato. Al momento stavo cercando di installare la versione più recente (10.0.3) di Newtonsoft.Json. Ho finito per installare la versione 7.0.1 e poi ho trovato un altro articolo che suggeriva di copiare il file .dll in: \ Programmi (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE. Cosa che ho fatto

Avviato di nuovo il processo dell'API REST, quindi ha ricevuto un errore diverso. Durante il tentativo di installare Microsoft.Rest.ClientRuntime 2.3.2 non è riuscito. Per questo, sono appena entrato in NuGet e l'ho installato sul progetto in cui sono stato installato l'API REST.

Avviata nuovamente l'installazione dell'API REST e questa volta è stata installata.

Oh e se aiuta chiunque con ricerche, stavo facendo il tutorial di Azure Immersion 02-API con VS2015 su Windows Server 2012R2.