2016-05-19 10 views
1

Nun, ich habe eine Lösung mit 2 Projekten: Einer von ihnen ist ein Winforms-Projekt, der andere ist eine Konsolenanwendung. Bei jeder Ausführung startet winforms project einen Prozess mit der EXE-Datei der Konsolenanwendung als Argument. Das Das Problem ist: Das Konsolenprojekt - wenn in einer cmd.exe ausgeführt wird - lädt alle erforderlichen Assemblys korrekt, aber wenn durch das Winforms-Projekt ausgeführt wird, kann bestimmte Assembly nicht geladen werden und versucht, es zu beheben, obwohl die richtige Assembly befindet sich neben der .exe-Datei. Genauer gesagt, wenn die Konsolenanwendung alleine ausgeführt wird, lädt Newtonsoft.Json.dll Version 8.0 erfolgreich, für die es kompiliert wurde, aber wenn es über winforms-Anwendung gestartet wird, löst es die Assembly nicht und versucht, sie zu laden 6.0 und schlägt fehl.Assembly versucht, falsche Assembly-Version zu lösen

Ich verwende VS 2015 und Newtonsoft.Json.dll Referenz wird von Nuget verwaltet.

Kann mir bitte jemand helfen, was ist hier falsch?

+0

Haben Sie versucht, alle Verweise auf frühere Versionen in Ihren package.config-Dateien zu löschen? – Pseudonym

+0

Die Datei package.config in der Konsolenanwendung referenzierte die richtige Version. Ich habe es gelöscht und jetzt ist alles in Ordnung! Ich weiß nicht, was passiert ist !! Das sehe ich auch in der Datei app.config: ** ** –

+0

Wenn ich das als Antwort poste? – Pseudonym

Antwort

0

Sie verweisen möglicherweise auf eine alte Version, überprüfen Sie die package.config Datei (en) und löschen Sie alle alten unerwünschten Versionen. Ich habe gesehen, dass dies ein paar Mal bei persönlichen Projekten passiert.