2017-06-01 2 views
1

Meine Anwendung ist ein ASP.NET Core 1.0 Web API.Microsoft-Sicherheitsempfehlung 4021279 System.BadImageFormatException

Nach der Microsoft Security Advisory 4021279 wollte ich die direkten Abhängigkeiten meines Projekts aktualisieren.

Im MyClassName.csproj ist die folgende Zeile ein:

<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.3" /> 

, die ich ändern:

<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.4" /> 

, weil die Versionen 1.0.0, 1.0.1, 1.0.2, 1.0.3 1.1.0, 1.1.1, 1.1.2 von Microsoft.AspNetCore.Mvc sind nicht speichern zu verwenden.

Wenn ich dann versuchen, das Projekt auszuführen, Iam die folgende Fehlernachricht erhalten:

System.BadImageFormatException: „Datei oder Assembly‚System.Core laden kann, Version = 4.0.0.0, Culture = neutral , PublicKeyToken = b77a5c561934e089 '. Referenz-Assemblys sollten nicht zur Ausführung geladen werden. Sie können nur im Reflection-loader-Kontext geladen werden. (Ausnahme von HRESULT: 0x80131058) "

Innerer Ausnahmefehler: BadImageFormatException: Eine Referenzassembly kann nicht geladen werden zur Ausführung.

Was mache ich falsch?

Antwort

1

So The post on Git sagt der folgende:

Wenn nach Neuübersetzung Sie einen Abhängigkeitskonflikt Warnung angezeigt wird, müssen Sie Ihre andere direkte Abhängigkeiten auf die entsprechende Version aktualisieren.

Zum Beispiel, wenn Ihr Projekt mit einer Versionsnummer von 1.0.1 auf Microsoft.AspNetCore.Routing bezieht sich, wenn Sie Ihr Microsoft.AspNetCore.Mvc Paket 1.0.4 aktualisieren, wird Kompilierung werfen:

NU1012 Abhängigkeit Konflikt . Microsoft.AspNetCore.Mvc.Core 1.0.4 erwartet Microsoft.AspNetCore.Routing> = 1.0.4 erhielt aber 1.0.1

Wie Sie in meiner Frage sehen kann, ich diese Fehlermeldung nicht erhalten. Allerdings habe ich die Version Microsoft.AspNetCore.Routing auf 1.0.4 aktualisiert und alles funktioniert.

Verwandte Themen