[C#] Impossibile caricare file o assembly ... Il parametro non è corretto


Answers

A seconda se stai usando X64 potresti dover ripulire un paio di punti. Basta pulire la mia directory utente non era abbastanza.

  1. % TEMP% \ File ASP.NET temporanei
  2. C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ File ASP.NET temporanei
  3. C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ File temporanei ASP.NET
  4. C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ File temporanei ASP.NET
  5. C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ File ASP.NET temporanei

Questo elenco crescerà come se fossero installate altre versioni del framework.

Question

Recentemente ho incontrato la seguente eccezione alla soluzione C #:

Errore 2 Impossibile caricare il file o l'assembly 'Newtonsoft.Json, Version = 3.5.0.0, Culture = neutral, PublicKeyToken = b9a188c8922137c6' o una delle sue dipendenze. Il parametro non è corretto. (Eccezione da HRESULT: 0x80070057 (E_INVALIDARG))

Questo non dipende né dal mio codice né dal nome dell'assembly (come Newtonsoft.Json in questo caso).

Quando elimino questa DLL dalla soluzione, il compilatore ne parla di un'altra nella stessa eccezione. Quindi suppongo che qualcuno debba essere spento / acceso sul mio PC :)




Ottenere un nuovo set di binari dal controllo del codice sorgente ha aiutato.

Grazie







Cancella tutti i file dalla cartella temporanea (C: \ Users \ nome_utente \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ cartella del progetto)




Ho riscontrato lo stesso errore perché l'applicazione non ha trovato framework dipendenti nella cartella C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\ . Ho appena ripristinato il mio studio di Visual che ha aggiunto il framework richiesto in posizione sopra e funziona perfettamente.







Il problema si riferisce alla versione di runtime .NET di una libreria di classi di riferimento (riferimenti estesi, selezionare la libreria e verificare la "Versione runtime". Ho avuto un problema con Antlr3.Runtime, dopo aver aggiornato il mio progetto di Visual Studio alla v4.5. utilizzato NuGet per disinstallare Microsoft ASP.NET Web Optimization Framework (a causa di una catena di dipendenze che mi impediva di disinstallare Antlr3 direttamente)

Ho quindi utilizzato NuGet per reinstallare Microsoft ASP.NET Web Optimization Framework. Questo ha reinstallato le versioni di runtime corrette.




È anche possibile cancellare la directory dei pacchetti e consentire a NuGet di scaricare nuovamente i pacchetti mancanti

ha risolto il problema per me




Ho appena cancellato i miei dati temporanei dell'applicazione da questo percorso

C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files

Risoluzione del problema




Ho avuto questo problema durante l'esecuzione del controller in MVC. Ho cambiato la versione .net framework. Il problema è stato risolto




Se qualcun altro utilizza il set di strumenti WiX, ho scoperto che il mio progetto di installazione aveva un riferimento a un vecchio progetto che era stato rimosso di recente dalla soluzione. Mi ci è voluto un po 'per rendermi conto dato che ci sono diversi progetti nella soluzione che stavo tentando di costruire e il messaggio non indicava quale progetto non riusciva a costruire (e puliva, cosa che stava fallendo pure).




Per sapere cosa cancellare di sicuro - aggiungi la seguente chiave di registro:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion\EnableLog (DWord set to 1).

Quindi vedrai output come sotto. Questo ti dice dove asp.net sta tentando di caricare le tue DLL. Cancella questa directory.

LOG: This bind starts in default load context.
LOG: Using application configuration file: c:\app\AtlasAdvisor\web\web.config
LOG: Using host configuration file: C:\Windows\Microsoft.NET\Framework\v4.0.30319\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:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/3c8629f7/dfa387b6/Avanade.ViddlerNet.DLL.**
LOG: Attempting download of new URL **file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/3c8629f7/dfa387b6/Avanade.ViddlerNet/Avanade.ViddlerNet.DLL**.



Se si utilizzano i Data Tools di SQL Server 2012, che utilizzano la shell VS2010 al 1 ° maggio 2013, verificare le impostazioni di Configuration Manager. Una modifica del nome del server da Workflow a xCPWorkflow è stata sufficiente per produrre lo stesso esatto. Il parametro non è corretto (eccezione da HRESULT: 0x80070057 (E_INVALIDARG)) .




Links