2014-03-25 7 views
23

Es gibt ein (nicht-Microsoft) NuGet package, das die Aktualisierung der Mvc3 zu Mvc4 ermöglicht.Einige (offiziell oder nicht) upgrade Mvc3 zu Mvc5 Guide?

Es gibt eine (Microsoft) article, die erläutert, wie manuell von Mvc3 zu Mvc4 migrieren. Wir können aus diesem Artikel, durch ex lesen:

Suchen Sie das ProjectTypeGuids Element und ersetzen {E53F8FEA-EAE0-44A6-8774-FFD645390401} mit {E3E379DF-F4C6-4180-9B81-6769533ABE47}.

Nun ist es etwas ähnliches, die von MVC3 zu MVC5 ermöglicht die Migration?

Gibt es ausreichend, um zuerst von 3 bis 4 zu migrieren, und dann die Framework-Version (auf 4.5) neu zu targetieren und die official MVC nu-get zu installieren?

Antwort

7

Als Antwort, dass jemand vorgeschlagen, dann für einen unknow Grund entfernt, werde ich diese Artikel Referenz für die obige Frage hinzufügen:

How to Upgrade an ASP.NET MVC 4 and Web API Project to ASP.NET MVC 5 and Web API 2

+0

ist Meine ist ein vb.net-Projekt und ich sehe diese Zeile WebApiConfig.Register (GlobalConfiguration.Configuration) in Global.asax oder G nicht lobal.asax.vb. Gibt es nicht irgendwo ein offizielles "How to" von Microsoft? Ich finde es überraschend, dass Microsoft diese inkompatiblen Versionen erstellt hat, ohne ein Tool zur Verfügung zu stellen, das beim Upgrade hilft. –

+3

Ich bin auch überrascht, dass Microsoft keine Empfehlung für Leute zu haben scheint, die von MVC3 zu MVC5 gehen wollen. a) Entweder direkt an MVC5 oder b) über MVC4. –

29

Durch die Installation von VS2015 ich meine Anwendungen konvertieren musste von MVC3 auf MVC5. Ich habe das mit Erfolg gemacht :). Ich hoffe, dass die folgende Beschreibung jemand in einem ähnlichen Problem helfen:

1) ändern .Net Framework auf 4,5

Project -> Properties -> Application -> Target Framework -> 4.5 

2) Installieren von Paket-Manager-Konsole:

Install-Package Microsoft.AspNet.Mvc -Version 5.2.3 

3) Es gibt eine Zeile in web.config, die lautet:

<add key="webpages:Version" value="1.0.0.0" /> 

auf die Version von system.web.webpages.dll in Ihrem Binärordner Changed es:

<add key="webpages:Version" value="3.0.0.0" /> 

4) Wenn Ihr Projekt die EntityFramework verwendet haben Sie es auf die Version 5.x-Upgrade oder höher und setzen dll Verweise auf

....\net45\EntityFramework.dll 
....\net45\EntityFramework.SqlServer.dll 

5) um Probleme zu lösen wie:

Error CS0104 'Compare' is an ambiguous reference between 'System.ComponentModel.DataAnnotations.CompareAttribute' and 'System.Web.Mvc.CompareAttribute' 

können Sie hinzufügen:

using CompareAttribute = System.Web.Mvc.CompareAttribute; 

6) Sie werden wahrscheinlich zusätzliche Definitionen in der web.config ändern müssen und die Ansichten \ web.config- und finden und Ersetzen von Text wie unten dargestellt:

System.Web.Mvc, System.Web.Mvc.*, System.Web.Razor, System.Web.WebPages.Razor Änderung 3.0.0.0-5.0.0.0

System.Web.WebPages, System.Web.WebPages.* Änderung 1.0.0.0-3.0.0.0

Das ist alles :)