Der Versuch, eine VS 2012-Lösung (SLN-Datei) explizit in VS 2013 zu öffnen, ist erfolgreich. Durch einfaches Doppelklicken im Windows Explorer wird es stattdessen in VS 2012 geöffnet.
Ich habe " Visual Studio 2012 konvertiert keine vs2010-Lösung? " Gelesen und bin dem Vorschlag gefolgt, die Lösungsdatei unter "Speichern unter ..." zu speichern .
Trotzdem wird es standardmäßig in VS 2012 geöffnet.
Meine Frage:
Wie ändere ich eine SLN-Datei, um das Öffnen in Visual Studio 2013 zu erzwingen?
# Visual Studio 2013
vs# Visual Studio 2012
Beachten Sie, dass Sie das Upgrade einer SLN- oder PROJ-Datei auch über die Befehlszeile erzwingen können, wobei devenv die Ziel-IDE-Version ist:
Beispiel:
Beachten Sie, dass Visual Studio dadurch nicht geöffnet wird. Eine Alternative besteht darin, in der IDE "Speichern unter" für Ihre Lösungsdatei auszuwählen und die Lösung unter einem neuen Namen zu überschreiben oder zu speichern.
Lesen Sie mehr: http://msdn.microsoft.com/en-us/library/w15a82ay.aspx
quelle
devenv "MyProject.sln" /upgrade
sollten Sie auch die .sln-Datei bearbeiten, überprüfen Sie @ Zacs ans.Scheint, als hätte das OP bereits eine funktionierende Antwort ... aber für mich war das Problem anders. Ich hatte eine VS 2012-Lösung (tatsächlich mehrere) und wollte sie auf 2013 konvertieren (was meines Wissens eine triviale Änderung der SLN-Datei ist, aber ich wollte, dass sie automatisch durchgeführt wird, falls es eine geheime Upgrade-Logik gibt, die mir nicht bekannt ist). .
Also dachte ich, ich würde es in VS2013 öffnen, es würde automatisch wie erwartet aktualisiert, und dann würde ich so eingestellt, dass ich auf die Lösung doppelklicke und sie in VS2013 in Zukunft sehe. Beim Öffnen in VS2013 wurde die Lösung für mich jedoch NICHT wie erwartet automatisch aktualisiert, und ich konnte keine explizite Möglichkeit finden, das Upgrade nach dem Öffnen der Datei in VS2013 zu erzwingen. Ich könnte mit der Lösung arbeiten, meine Änderungen speichern und VS2013 schließen, aber die SLN-Datei bleibt unverändert und wird nicht aktualisiert.
Es stellte sich heraus, dass mein Problem darin bestand, wie ich die Lösung öffnete ... aus Gewohnheit klicke ich mit der rechten Maustaste auf Dateien und wähle "Öffnen mit", um das Programm auszuwählen, mit dem ich eine Datei öffnen möchte. Ich mache das oft. Hinweis Ich spreche NICHT davon, das Standardprogramm "Öffnen mit" zu ändern, sondern nur einmal eine Datei mit einem bestimmten Programm zu öffnen. Also würde ich mit der rechten Maustaste auf die SLN-Datei klicken ... mit Visual Studio 2013 öffnen ... und nichts würde aktualisieren.
Schließlich dachte ich, ich würde in VS2013 gehen, dann Datei> Öffnen ausführen und die SLN-Datei auswählen (dies ist mir fremd, da ich kaum oder nie etwas auf diese Weise öffne, vielleicht sind Sie genauso). Auf jeden Fall wurde die Lösungsdatei sofort aktualisiert.
Nach dem Upgrade wurden die Zeilen 2-3 der SLN-Datei wie folgt geändert:
dazu:
Um eine VS2012 .sln automatisch auf VS2013 zu aktualisieren, müssen Sie meiner Erfahrung nach VS2013 öffnen und die .sln im Dialogfeld Datei> Öffnen auswählen. Wenn Sie die Explorer-Shell verwenden, um das Öffnen der SLN-Datei in VS2013 zu erzwingen, wird die Upgrade-Logik (anscheinend) nicht aufgerufen.
Als weiteren Hinweis habe ich mit einer anderen Lösung getestet und nach Änderungen über Configuration Manager (der offensichtlich die SLN-Datei "berührt") ein VS2012 auf VS2013 aktualisiert, selbst nachdem es durch Klicken mit der rechten Maustaste geöffnet wurde.
quelle
Ich hatte eine Lösung, die zuvor erfolgreich von 2010 auf 2013 aktualisiert wurde, aber immer noch die .sln als mit 2010 verbunden zeigte.
Ich habe alle in diesem Thread angegebenen Methoden getestet. Die einzige Methode, mit der die SLN-Datei erfolgreich korrigiert wurde, bestand darin, Visual Studio 2013 allein zu öffnen, dann die noch mit 2010 verknüpfte Lösung in der IDE zu öffnen und dann [Datei]> [Speichern] zu verwenden (name) .sln as], um die vorhandene .sln-Datei zu überschreiben.
Das Festlegen der Dateizuordnung der .sln als "Visual Studio-Versionsauswahl" wurde nicht geändert, und die Lösung wurde 2010 weiter geöffnet.
Die Methode devenv (name) .sln / upgrade hat keine Änderung an meiner .sln-Datei vorgenommen.
Das Hacken des Rohtextes der SLN-Datei hat meine beschädigt und sie wurde überhaupt nicht geöffnet.
quelle
Um dieses Problem zu lösen, habe ich gerade die folgenden Zeilen der SLN-Datei geändert:
in diese:
Die Kommentarzeile muss geändert werden, da sie vom Solution Loader analysiert wird.
quelle
Dies funktioniert möglicherweise für Leser, die versuchen, eine Lösungsdatei auf Visual Studio 2015 zu aktualisieren. (Ich habe eine VS 2012-Lösung aktualisiert.)
Möglicherweise möchten Sie den entfernten Projektordner zu diesem Zeitpunkt löschen, da Schritt 3 ihn nicht gelöscht hat.
Dies funktionierte für mich, als weder die Antworten von zumey noch die Antworten von TCC zutrafen .
BEARBEITEN
Metro Smurf hatte eine ähnliche, aber einfachere Antwort als meine auf eine ähnliche Frage . Seine Schritte waren:
quelle