Beim Versuch, SharpSVN zu meinem C # -Projekt hinzuzufügen, führt das Kompilieren mit SharpSVN-bezogenen Aufrufen zu folgendem Fehler:
FileLoadException wurde nicht behandelt Die Assembly im gemischten Modus wird gegen die Version 'v2.0.50727' der Laufzeit erstellt und kann nicht ohne zusätzliche Konfigurationsinformationen in die 4.0-Laufzeit geladen werden.
Ich habe die Referenzen aus der heruntergeladenen SharpSVN-Zip-Datei hinzugefügt und das
hinzugefügt %Vor%Wenn ich kompiliere, funktioniert es gut, aber wenn ich hinzufüge:
%Vor%Es bricht mit diesem Fehler. Ich habe diesen Fehler gesucht und hatte kein Glück bei der Suche nach einer Lösung.
Die SharpSVN-Assembly ist eine gemischte Assembly, die mit der Version 2.0 der CLR erstellt wurde.
Daher kann es in CLR Version 4.0 nicht geladen werden.
Sie müssen Ihr Projekt ändern, um .Net 3.5 (oder früher) in den Projekteigenschaften anzuzeigen.
Da .Net 2.0, .Net 3.0 und .Net 3.5 alle die Version 2.0 der CLR verwenden, funktioniert es in jeder dieser Versionen.
Fügen Sie dies Ihrer app.config hinzu, wenn Sie weiterhin auf .NET 4:
abzielen %Vor%Dies ermöglicht das Laden von Assemblys im gemischten Modus (hauptsächlich C ++ / CLI-Assemblys, die sowohl nicht verwalteten als auch verwalteten Code enthalten), die für eine ältere Version des Frameworks erstellt wurden.
Wie Julien erwähnt hat, müssen Sie den Kompatibilitätscode in die App.config oder web.config Ihres Projekts einfügen:
%Vor%Das ist alles gut und gut, aber wenn Sie dieses Problem mit einem Test-Runner (wie MSTest) in Visual Studio haben, müssen Sie diese Änderung tatsächlich in der Konfigurationsdatei des Test-Runner vornehmen.
Ich schrieb einen Artikel über dieses Problem in VS 2012:
In Visual Studio 2012 müssen Sie den Startcode der folgenden Datei hinzufügen:
%Vor%Tags und Links c# sharpsvn fileloadexception