On dirait que l'OP a déjà une réponse fonctionnelle ... mais pour moi, le problème était différent. J'avais une solution VS 2012 (plusieurs en fait) et je voulais les convertir en 2013 (ce que je comprends est une modification triviale du fichier .sln, mais je voulais que cela soit fait automatiquement au cas où il y aurait une logique de mise à niveau secrète dont je n'étais pas au courant) .
J'ai donc pensé que je l'ouvrirais dans VS2013, qu'il serait automatiquement mis à niveau comme prévu, puis je serais configuré pour double-cliquer sur la solution et la voir dans VS2013 à l'avenir. Mais l'ouverture dans VS2013 ne mettait PAS à niveau la solution pour moi automatiquement comme prévu et je ne pouvais pas trouver un moyen explicite de forcer la mise à niveau après l'ouverture du fichier dans VS2013. Je pourrais travailler avec la solution, enregistrer mes modifications et fermer VS2013, mais le .sln resterait inchangé et non mis à niveau.
Il s'avère que mon problème était de savoir comment j'ouvrais la solution ... par habitude, je clique avec le bouton droit sur les fichiers et sélectionne «ouvrir avec» pour choisir le programme que je veux utiliser pour ouvrir un fichier. Je fais cela fréquemment. Remarque Je ne parle PAS de changer le programme par défaut «ouvrir avec», mais simplement d'ouvrir un fichier avec un programme spécifique une fois. Je ferais donc un clic droit sur le fichier .sln ... ouvert avec Visual Studio 2013 ... et rien ne serait mis à niveau.
Finalement, j'ai pensé aller dans VS2013, puis faire Fichier> Ouvrir et sélectionner le fichier .sln (cela m'est étranger car je n'ouvre presque jamais rien de cette façon, peut-être que vous êtes de la même manière). Quoi qu'il en soit, cela a mis à jour le fichier de solution instantanément.
Après la mise à niveau, les lignes 2 et 3 du fichier .sln ont changé de ceci:
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
pour ça:
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.30501.0
MinimumVisualStudioVersion = 10.0.40219.1
Donc, d'après mon expérience, pour mettre à jour automatiquement un VS2012 .sln vers VS2013, vous devez ouvrir VS2013 et sélectionner le .sln dans la boîte de dialogue Fichier> Ouvrir. L'utilisation du shell de l'explorateur pour forcer l'ouverture du fichier .sln dans VS2013 n'appelle pas la logique de mise à niveau (apparemment).
En outre, j'ai testé avec une autre solution, et après avoir apporté des modifications via Configuration Manager (qui "touche" évidemment le fichier .sln), il a mis à niveau un VS2012 vers VS2013, même après l'avoir ouvert via un clic droit ouvrir avec.