13

ich die folgende Fehlermeldung unten nach dem Öffnen und Kompilieren mein VS 2010.net 4.0 MVC3-Projekt in VS 2012 RTM. Wie kann ich das beheben, ohne auf MVC4 zu aktualisieren?Versammlung SomeAssembly verwendet 'System.Web.Mvc, Version = 4.0.0.0, die eine höhere Version als referenzierte Assembly ‚System.Web.Mvc hat, Version 3.0.0.0

Ich habe VS 2010 und VS 2012 nebeneinander installiert.

Fehler 1 Assembly 'SomeAssembly, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null' Anwendungen 'System.Web.Mvc, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35', das hat eine höhere Version als referenzierte Assembly 'System.Web.Mvc, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'

+0

Verwandte: http://stackoverflow.com/questions/10402005 –

+0

http://forums.asp.net/t/1800348.aspx/1 –

+0

http: //stackoverflow.com/questions/5163773 ... Alle im Grunde das gleiche Problem. –

Antwort

7

zum Referenzen, Überprüfen Sie die aktuelle Version von System.Web.Mvc (ich denke, es zeigt immer noch auf mvc3). Entfernen Sie sie und fügen Sie noch einmal Referenzen hinzu, aber dieses Mal System.Web.Mvc 4.0 ..! Wenn Sie mehrere Projekte in einer einzigen Lösung verwenden, dann .. Für z.B. Sie haben zwei Projekte ProjA (MVC4) und ProjB (noch in MVC3), Wenn ProjA eine Referenz von ProjB hat oder ProjJB verwendet, dann gibt es höchstwahrscheinlich den oben genannten Fehler. Möglicherweise müssen Sie die MVC-Versionen in beiden Projekten ändern.

+0

Es wird standardmäßig auf Mvc 4.0 Dll, und ich habe es manuell in beiden Csproj-Dateien in 4.0 und in web.config geändert. Hat nicht geholfen. – kyleb

+0

Das hat es für mich getan. Die Nachricht ist kryptisch und teilt Ihnen nicht mit, dass der Fehler im referenzierten Projekt vorliegt. – Chris

+0

Das funktionierte auch für mich, ich habe mein ASP.NET MVC mit Nuget aufgerüstet und es hat funktioniert. – anansharm

11

Ihre web.config prüfen. system.web/assemblies hat Version 3.0, obwohl Ihr Projekt 4.0 referenziert.

Es war der Fall für mich.

21

Eine andere Sache zu prüfen ist, dass Sie nicht über ein Testprojekt noch die MVC3 Montage in der Lösung zu verweisen. Das hat mich erwischt.

+1

Dies war mein Fall, die Referenz wurde nicht aktualisiert, weil es manuell hinzugefügt wurde, eine Installation des Pakets mit Nuget in das Testprojekt behoben. Danke –

+0

Auch mein Problem. – Matt

1

Wenn Sie Visual Studio verwenden Sie für Aktualisierungen Ihrer NuGet Pakete überprüfen, die ohne die Notwendigkeit aktualisieren um manuell mit dem Web.config gehen durcheinander. Wählen Sie Werkzeuge -> Bibliothekspaket-Manager -> NuGet-Pakete für Lösung verwalten. Überprüfen Sie, ob Sie sich in der aktuellsten Version von MVC befinden, indem Sie im linken Bereich Updates auswählen. Suchen Sie dann in der Liste der Updates nach MVC und klicken Sie auf Aktualisieren. Sobald das Update abgeschlossen ist, klicken Sie auf Build und Build-Lösung. So löste ich mein Problem, das ich zwischen MVC und Fluent Validation NuGet hatte. Und es aktualisiert Web.config automatisch.

0

Verwenden von asp.net 4.5 und hatte ein ähnliches Problem. Rechts auf Referenzen klicken und gehen Sie zu verwalten NuGet Pakete. Überprüfen Sie, ob für das Paket mit einer veralteten Version ein Update vorhanden ist. Kann fragen, Dateien zu überschreiben, aber das ist in Ordnung.

Verwandte Themen