Ich habe ein altes ASP.NET MVC 2-Projekt, das ich nicht auf MVC 3 oder MVC 4 aktualisieren möchte. Ich arbeite auf einem neuen Computer unter Windows 8, Visual Studio 2012 und Visual Studio 2013. Wenn ich versuche, MVC zu öffnen 2 Projekt in VS 2012 oder VS 2013 Ich erhalte den Fehler:
Dieses Projekt ist nicht mit der aktuellen Edition von Visual Studio kompatibel
Das Projekt wird dann entladen und im Projektmappen-Explorer abgeblendet. Ich möchte keine weitere Kopie von Visual Studio installieren. Wie kann ich ein altes MVC-Projekt in einer neuen Version von Visual Studio öffnen?
Antworten:
Das Öffnen eines nicht unterstützten MVC-Projekts in Visual Studio 2012 oder Visual Studio 2013 ist in zwei Schritten recht einfach. In der Tat, wie bytebender Kommentar zeigt an , dieselben Schritte sollten auf und arbeiten für 1 Projekte MVC anwenden. Ich habe sie jedoch nicht getestet und kann daher nicht garantieren, dass sie tatsächlich funktionieren.
Angenommen, Sie haben dies noch nicht getan. Schritt 1 besteht darin, MVC 1 , MVC 2 oder MVC 3 herunterzuladen und zu installieren (schließen Sie Visual Studio, bevor Sie mit der Installation beginnen).
Sobald Sie die entsprechende Version von MVC installiert haben, wird das Projekt in VS 2012 immer noch nicht geladen. Dies liegt daran, dass ASP.NET MVC-Projekte ein Projektuntertyp des Webanwendungsprojekttyps sind. Dies bedeutet, dass dem Projekt zusätzliche Add-Ins und Funktionen zur Verfügung stehen, wenn es in Visual Studio verwendet wird.
Sowohl Visual Studio 2012 als auch Visual Studio 2013 sind in ihrer Abwärtskompatibilität mit ASP.NET MVC und anderen Projekttypen eingeschränkt. Leider hat die Installation der alten MVC-Bits daran nichts geändert. Visual Studio 2012 ist mit den Projektvarianten ASP.NET MVC 3 und 4 kompatibel . Visual Studio 2013 ist mit MVC 4 und MVC 5 kompatibel .
Um das Projekt zum Laden zu bringen, müssen Sie die Projektdatei ändern. Klicken Sie dazu mit der rechten Maustaste auf das entladene Projekt und wählen Sie Bearbeiten. Dadurch wird die Projektdatei als XML-Textdatei geöffnet. Suchen Sie den
ProjectTypeGuids
Knoten, der ungefähr so aussehen soll:Entfernen Sie die entsprechenden Projektrichtlinien aus der Liste:
{603c0e0b-db56-11dc-be95-000d561079b0}
{F85E285D-A4E0-4152-9332-AB1D724D3325}
(siehe Beispiel oben){E53F8FEA-EAE0-44A6-8774-FFD645390401}
{E3E379DF-F4C6-4180-9B81-6769533ABE47}
Wenn die entsprechende GUID entfernt wurde,
ProjectTypeGuids
sollte die ungefähr so aussehen:Speichern Sie die Datei und schließen Sie den Visual Studio-Projektdatei-Editor. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie Neu laden. Wenn das Projekt nicht neu geladen wird, schließen Sie Visual Studio und öffnen Sie es erneut. Sie sollten jetzt in der Lage sein, mit Ihrem alten ASP.NET MVC-Projekt in Ihrer neuen Version von Visual Studio zu arbeiten.
Beachten Sie, dass Visual Studio nach diesen Änderungen nicht weiß, dass es sich um ein ASP.NET MVC-Projekt handelt. daher die projektspezifischen Funktionen wie "Controller hinzufügen, Ansicht etc." wird nicht in Menüs vorhanden sein.
quelle
Ich habe @ ahsteeles Ansatz verwendet (danke und 2x + 1s!), Hatte aber einen weiteren Fehler: -
Ich kann keine Zitate für die wahre Ursache dafür finden, aber ich konnte VS2012RTM dazu bringen, das Projekt erfolgreich zu laden, indem ich das änderte
<ProjectGuid>
. (Keine Ahnung, wie dies passiert ist - es ist Teil einer großen Lösung und VS08, VS10, VS11 Beta und VS2012RC haben alle das.csproj
und im.sln
Laufe der Zeit aktualisiert .quelle
In VS2017 besteht die Lösung darin, es einfach so zu machen
<ProjectTypeGuids></ProjectTypeGuids>
.Keine Zwischenräume zwischen Damen und Herren, sonst werden 48 Stunden Ihrer Zeit verschwendet.
Grüße
quelle