J'ai un ancien projet ASP.NET MVC 2 que je ne souhaite pas mettre à niveau vers MVC 3 ou MVC 4. Je travaille sur une nouvelle machine exécutant Windows 8, Visual Studio 2012 et Visual Studio 2013. Quand j'essaye d'ouvrir le MVC 2 projet dans VS 2012 ou VS 2013, je reçois l'erreur:
Ce projet est incompatible avec l'édition actuelle de Visual Studio
Le projet est ensuite déchargé et grisé dans l'Explorateur de solutions. Je ne souhaite pas installer une autre copie de Visual Studio. Comment puis-je ouvrir un ancien projet MVC dans une nouvelle version de Visual Studio?
Réponses:
L'ouverture d'un projet MVC non pris en charge dans Visual Studio 2012 ou Visual Studio 2013 est en fait assez facile à réaliser en deux étapes. En fait, comme l' indique le commentaire de bytebender , ces mêmes étapes devraient s'appliquer et fonctionner pour les projets MVC 1. Cependant, je ne les ai pas testés et je ne peux donc pas garantir qu'ils fonctionnent réellement.
En supposant que vous ne l'avez pas déjà fait, la première étape consiste à télécharger et installer MVC 1 , MVC 2 ou MVC 3 (fermez Visual Studio avant de démarrer l'installation).
Une fois que vous avez installé la version appropriée de MVC, le projet ne se chargera toujours pas dans VS 2012. Cela est dû au fait que les projets ASP.NET MVC sont un sous - type de projet du type de projet d'application Web. Cela signifie que le projet a des compléments et des fonctionnalités supplémentaires disponibles lorsqu'il est utilisé dans Visual Studio.
Visual Studio 2012 et Visual Studio 2013 sont limités dans leur compatibilité descendante avec ASP.NET MVC et d'autres types de projets. Malheureusement, l'installation des anciens bits MVC n'a pas changé cela. Visual Studio 2012 est compatible avec les versions de projet ASP.NET MVC 3 et 4. Visual Studio 2013 est compatible avec MVC 4 et MVC 5.
Pour charger le projet, vous devrez modifier le fichier projet. Pour ce faire, cliquez avec le bouton droit sur le projet déchargé et sélectionnez Modifier. Ce qui ouvrira le fichier projet sous forme de fichier texte XML. Trouvez le
ProjectTypeGuids
nœud qui devrait ressembler à ceci:Supprimez le guide de projet approprié de la liste:
{603c0e0b-db56-11dc-be95-000d561079b0}
{F85E285D-A4E0-4152-9332-AB1D724D3325}
(illustré dans l'exemple ci-dessus){E53F8FEA-EAE0-44A6-8774-FFD645390401}
{E3E379DF-F4C6-4180-9B81-6769533ABE47}
Avec le GUID approprié supprimé, le
ProjectTypeGuids
devrait ressembler à ceci:Enregistrez le fichier et fermez l'éditeur de fichier de projet Visual Studio. Cliquez avec le bouton droit sur le projet et sélectionnez recharger. Si le projet ne se recharge pas, fermez et rouvrez Visual Studio. Vous devriez maintenant pouvoir travailler avec votre ancien projet ASP.NET MVC dans votre nouvelle version de Visual Studio.
Une chose importante à noter est qu'après ces modifications, Visual Studio n'est pas conscient qu'il s'agit d'un projet ASP.NET MVC; par conséquent, les fonctionnalités spécifiques au projet telles que "Ajouter un contrôleur, une vue, etc." ne sera pas présent dans les menus.
la source
J'ai utilisé l'approche de @ ahsteele (merci et 2x + 1s!), Mais j'avais une autre erreur: -
Je ne trouve pas de citations pour la vraie cause de cela, mais j'ai pu obtenir VS2012RTM pour charger le projet avec succès en modifiant le fichier
<ProjectGuid>
. (Je ne sais pas comment cela s'est passé - cela fait partie d'une grande solution et VS08, VS10, VS11 Beta et VS2012RC ont tous mis à niveau le.csproj
et au.sln
fil du temps.la source
Dans VS2017, la solution est de faire comme
<ProjectTypeGuids></ProjectTypeGuids>
ça.Pas d'espace entre mesdames et messieurs, sinon cela vous fera perdre 48 heures de votre temps.
Cordialement
la source