Ich habe gerade ein MVC5-Projekt erstellt und mehrere Pakete von Nuget hinzugefügt, aber als ich das Projekt kompilierte, bekam ich diesen Fehler. Es scheint, dass eines der Pakete wirklich von system.web.http Version 5.2.3.0 abhängt, die ich nirgendwo finden konnte. Ich frage mich nur, wie ich die neueste Version von system.web.http bekomme.
Fehler 2 Assembly 'System.Web.Http.WebHost, Version = 5.2.3.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35' verwendet 'System.Web.Http, Version = 5.2.3.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35' eine höhere Version als die referenzierte Assembly 'System.Web.Http, Version = 5.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'
d: \ Backup 2014-12-25 \ Website-Projects \ www.ptsol.com.au \ packages \ Microsoft.AspNet.WebApi.WebHost.5.2.3 \ lib \ net45 \ System.Web.Http.WebHost.dll
asp.net-mvc
asp.net-mvc-5
nuget
John Hadikusumo
quelle
quelle
Eine Möglichkeit, dies zu beheben, besteht darin, die Assemblyumleitung in der Datei web.config zu ändern.
Ändern Sie Folgendes:
zu
Das Attribut oldVersion sollte sich also von "...- 4.0.0.0" in "...- 5.2.3.0" ändern.
quelle
bindingRedirect
Setup als<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
aber geändert, um es zu verwenden4.0.0.0
. Macht für mich immer noch keinen Sinn, da ich die NuGet-Paket-DLL und nicht die GAC-Version verwenden sollte, aber hey, es hat funktioniert ... also danke!Ich habe
Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
es getan, aber es hat immer noch nicht funktioniert. Dann schaute ich in meinen Projekt-Bin-Ordner und stellte fest, dass er noch die alte System.Web.Mvc-Datei hatte.Also habe ich die neuere Datei manuell aus dem Paket in den Ordner bin kopiert. Dann war ich wieder am Laufen.
quelle
Installationspaket Microsoft.AspNet.WebApi.Core -version 5.2.3
Dann im Projekt Referenz hinzufügen -> Durchsuchen. Klicken Sie auf die Schaltfläche "Durchsuchen", wechseln Sie zu "C: \ Benutzer \ Benutzername \ Dokumente \ Visual Studio 2015 \ Projekte \ Projektname \ Pakete \ Microsoft.AspNet.Mvc.5.2.3 \ lib \ net45" und fügen Sie die erforderliche DLL-Datei hinzu
quelle
Die von Ihnen installierten Pakete führten Abhängigkeiten zu DLLs der Version 5.2.3.0 ein, wie der Benutzer Bracher oben gezeigt hat. Microsoft.AspNet.WebApi.Cors ist ein Beispielpaket. Der Pfad, den ich gehe , besteht darin, das MVC-Projektprogramm auf alle Paketinstallationen zu aktualisieren :
https://www.nuget.org/packages/microsoft.aspnet.mvc
quelle
Das Deinstallieren und erneute Installieren des NuGet-Pakets hat bei mir funktioniert.
Führen Sie dies in der Package Manager-Konsole aus:
UnInstall-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
quelle