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:
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
dazu:
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.30501.0
MinimumVisualStudioVersion = 10.0.40219.1
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.