Question

Ma solution actuelle pour renommer le dossier de projet est la suivante:

  • Supprimez le projet de la solution.
  • Renommez le dossier en dehors de Visual Studio.
  • Ajoutez à nouveau le projet à la solution.

Y a-t-il une meilleure solution?

Était-ce utile?

La solution

  

Utilisateurs de TFS: Si vous utilisez un contrôle de code source qui vous oblige à l'avertir avant de renommer vos fichiers / dossiers, consultez cette réponse à la place , qui couvre les étapes supplémentaires requises.

Pour renommer le dossier d'un projet, le fichier (. * proj ) et le nom complet dans Visual Studio:

  • Fermez la solution.
  • Renommez le ou les dossiers en dehors de Visual Studio. (Renommez dans TFS si vous utilisez le contrôle de source)
  • Ouvrez la solution en ignorant les avertissements (répondez "non" s'il vous est demandé de charger un projet à partir du contrôle de code source).
  • Parcourez tous les projets non disponibles et ...
    • Ouvrez la fenêtre Propriétés du projet (mettez le projet en surbrillance et appuyez sur Alt + Entrée ou F4 , ou cliquez avec le bouton droit sur > propriétés).
    • Définissez la propriété " Chemin du fichier " sur le nouvel emplacement.
      • Si la propriété n'est pas modifiable (comme dans VS2012), ouvrez le fichier .sln directement dans un autre éditeur tel que Notepad ++ et mettez-y à jour les chemins. (Vous devrez peut-être d'abord extraire la solution dans TFS, etc.)
    • Recharger le projet - cliquez avec le bouton droit de la souris sur > recharger le projet.
    • Modifiez le nom d'affichage du projet en le mettant en surbrillance et en appuyant sur F2 , ou cliquez avec le bouton droit de la souris sur > renommer .

Remarque: les autres solutions suggérées impliquant la suppression puis l'ajout du projet à la solution rompent les références du projet.

Si vous suivez ces étapes, vous pouvez également envisager de renommer les éléments suivants afin qu'ils correspondent:

  1. Assemblée
  2. Espace de noms par défaut / racine
  3. Espace de noms des fichiers existants (utilisez les outils de refactorisation de Visual Studio ou de l'outil d'espaces de noms incohérents de ReSharper)

Pensez également à modifier les valeurs des attributs d'assemblage suivants:

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute

Autres conseils

Il existe un autre moyen de procéder, en utilisant les fichiers * .sol, * csproj.

  1. ouvrez votre fichier de solution
  2. recherchez le * .csproj que vous souhaitez modifier
  3. ce sera comme ça (par rapport au fichier * .sol):

    Projet ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}" ") = "; Shani.Commands.Impl", "Shani.Commands.Impl \ Shani.Commands.Impl. .csproj ", {747CFA4B-FC83-419A-858E-5E2DE2B948EE}"

  4. et remplacez simplement la première partie par le nouveau répertoire, par exemple:

    Impl \ Shani.Commands.Impl \ Shani.Commands.Impl.csproj

  5. bien sûr, n'oubliez pas de déplacer l'ensemble du projet dans ce répertoire

Amusez-vous.

C’est simple dans VS 2015 (fonctionne éventuellement dans les versions antérieures)

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit de la souris sur Solution principale > Renommer
  2. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet (sous la solution) > Renommer
  3. Dans l'Explorateur de solutions, double-cliquez ou faites un clic droit sur Propriétés > Aller à l'onglet Application, renommez Nom d'assembly et Espace de noms par défaut afin qu'il corresponde .
  4. Si vous souhaitez également renommer l'espace de noms, ouvrez l'un de vos fichiers de classe. Cliquez avec le bouton droit sur l'espace de nom > Renommer ... ceci devrait rechercher et remplacer toutes les références à votre espace de noms tout au long du projet.
  5. Fermez le projet > renommer le dossier du projet .
  6. Éditez le fichier .sln dans le bloc-notes, changez le chemin en cjproj. c'est-à-dire fu \ bar.csproj - > bar \ bar.csproj

Homme, ai-je eu du mal avec ça. Malheureusement, il n’existe pas de solution en un clic dans Visual Studio, mais si vous exécutez Visual Studio 2012 et que votre projet est sous contrôle de source avec Team Foundation Server , voici ce qui suit: comment je l'ai obtenu, tout en conservant l'historique des sources:

(Assurez-vous de lire le commentaire de @ mjv ci-dessous, car il remarque que vous pouvez ignorer les étapes 5 à 10)

  1. Assurez-vous d'avoir bien enregistré toutes les modifications afin de ne pas avoir de modifications en attente.
  2. Supprimez le projet de la solution en cliquant avec le bouton droit de la souris et en sélectionnant Supprimer .
  3. Désormais, dans l'Explorateur Windows, renommez le dossier du projet.
  4. Retournez dans Visual Studio et dans l'Explorateur de solutions, cliquez avec le bouton droit de la souris sur la solution et choisissez Ajouter - > Projet existant . Sélectionnez le fichier de projet pour le projet que vous avez supprimé à l'étape 2, qui devrait se trouver dans le dossier renommé.
  5. Le projet est maintenant de retour dans la solution, mais il ne semble pas qu'il ait été ajouté au contrôle de source. Pour résoudre ce problème, ouvrez l'Explorateur de contrôles source.
  6. Recherchez le dossier du projet dans Source Control Explorer, qui correspond au dossier du projet sur votre disque que vous avez renommé à l'étape 3.
  7. Renommez le dossier dans l'Explorateur de contrôles source afin qu'il porte le même nom que le dossier de projet sur le disque.
  8. Examinez maintenant vos modifications en attente. Vous devez modifier le fichier de solution et renommer le dossier du projet.
  9. Effectuez une reconstruction et assurez-vous que tout est correctement compilé. Si vous aviez des références inter-projets au projet que vous avez renommé, vous devez les ajouter à nouveau aux projets individuels qui l'ont référencé.
  10. Vous devriez être prêt maintenant. Allez tout vérifier.

Le guide ci-dessus a fonctionné pour moi. Si cela ne fonctionne pas pour vous, essayez de supprimer complètement votre solution locale, puis supprimez le mappage de dossiers dans votre espace de travail. Redémarrez Visual Studio au cas où. Assurez-vous que vous avez bien supprimé toute la solution de votre ordinateur. Lisez maintenant le mappage de la solution sur votre espace de travail et obtenez la dernière version. Maintenant, essayez les étapes ci-dessus. La même chose s'applique si quelque chose ne va pas en suivant les étapes ci-dessus. Supprimez simplement votre solution localement et obtenez la dernière source. Vous disposerez ainsi d'une base vierge pour travailler.

Si vous rencontrez toujours des problèmes, assurez-vous de ne rien avoir changé manuellement dans le fichier de solution ou d'essayer d'autres "astuces" avant d'essayer les étapes ci-dessus. Si vous avez modifié quelque chose et que vous l'avez archivé, vous pouvez envisager de revenir en arrière juste avant de commencer à modifier le changement de nom du projet.

Bien sûr, vous souhaiterez également renommer le projet lui-même dans l'Explorateur de solutions. Vous pouvez le faire avant les étapes ci-dessus, mais dans ce cas, assurez-vous de bien enregistrer cette modification avant d'appliquer les étapes ci-dessus. Vous pouvez également le faire ultérieurement, mais assurez-vous de suivre d'abord toutes les étapes ci-dessus et archivez vos modifications avant d'essayer de renommer le nom du projet dans l'Explorateur de solutions. Je ne recommande pas d'essayer de mélanger les étapes ci-dessus avec un renommage du nom du projet dans l'Explorateur de solutions. Cela fonctionnera peut-être bien, mais je vous conseillerais de le faire dans 2 changesets distincts.

Actuellement, non. En fait, vous pouvez cliquer sur le nœud de projet brisé et, dans le volet des propriétés, rechercher la propriété "Chemin", puis cliquer sur la petite icône de navigation et sélectionner le nouveau chemin.

Voila :)

La solution la plus simple est la suivante:

  1. Cliquez avec le bouton droit sur le projet et renommez-le.
  2. (facultatif) Ouvrez les paramètres de la propriété du projet et modifiez le nom de l’assemblage (et éventuellement l’espace de nom par défaut) pour utiliser le nouveau nom du projet.
  3. (facultatif) Sélectionnez le nom de l'espace de nom dans un fichier source, cliquez avec le bouton droit de la souris et sélectionnez Refactor \ Rename pour renommer globalement l'espace de nom en nouveau nom de projet.
  4. (facultatif) Ouvrez le fichier AssemblyInfo.cs et modifiez le nom de l'assembly afin qu'il corresponde.
  5. Enregistrez et fermez la solution.
  6. À l'aide de l'Explorateur Windows, renommez le dossier du projet avec le nouveau nom.
  7. Ouvrez le fichier SLN dans un éditeur de texte, recherchez la référence au chemin du projet et changez-le pour utiliser le nouveau nom de dossier.

Il y a 4 étapes nécessaires mais 7 recommandées. À la fin de la journée, le projet est complètement renommé. Techniquement, le nom de dossier du projet ne doit pas nécessairement correspondre au projet lui-même. Cette étape est donc facultative, mais elle peut prêter à confusion si elle ne correspond pas. Idem pour les noms d'assembly et d'espace de nom.

Dans la réponse d’andersjanmyr, il est plus facile de renommer le projet en premier.

  1. Renommer le projet.
  2. Fermez la solution (enregistrez-la).
  3. Renommez les dossiers en dehors de Visual Studio.
  4. Ouvrez la solution en ignorant les avertissements.
  5. Parcourez tous les projets non disponibles et définissez la propriété "Chemin du fichier" sur le nouvel emplacement de votre fichier de projet, c’est-à-dire someproject.csproj.
  6. Rechargez le projet.

De plus, une fois ces étapes effectuées, vous voudrez peut-être renommer les autres références en ancien nom de projet.

Dans les propriétés du projet, mettez à jour le nom de l'assembly et l'espace de nom par défaut. Ceci mettra à jour les éléments suivants dans le fichier de projet ...

<RootNamespace>SomeProjectName</RootNamespace>
<AssemblyName>SomeProjectName</AssemblyName>

... et éliminera l'erreur "L'espace de nommage ne correspond pas à l'emplacement du fichier, mais devrait être: 'NomProjetVoilà' '"

Renommez votre espace de noms racine (si vous avez effectué une nouvelle recherche, cliquez avec le bouton droit de la souris sur l'espace de noms et choisissez Refactor - > Renommer).

Modifiez toutes les occurrences de votre ancien nom de projet dans AssemblyInfo.cs

Pour VS2017, vous pouvez utiliser mon extension Visual Studio

télécharger

Il renommera le projet en:

  • dossier d'emplacement du projet
  • fichier de solution
  • référence dans d'autres projets
  • nom de l'ensemble, informations
  • espace de noms par défaut

Je devais le faire moi-même (avec VS2010). Comme certains l’ont répondu, l’étape la plus simple semble être:

  1. Fermez le projet VS.
  2. Ouvrez le fichier .sln et renommez le préfixe du répertoire du projet pour chacune des occurrences .csproj.
  3. Enregistrez le fichier .sln
  4. Renommez le répertoire du dossier du projet sur votre disque dur afin qu'il corresponde à vos modifications dans le fichier .sln.
  5. Ouvrez le fichier .sln (dans VS) et reconstruisez

Voir élément 3 de article lié.

  1. Fermez la solution et l'EDI.
  2. Dans l'explorateur: remplacez le nom du répertoire par le nouveau nom.
  3. Dans l'explorateur: ouvrez le fichier .sln avec un éditeur de texte.
  4. Remplacez le nom du répertoire par le nouveau et enregistrez-le.
  5. Redémarrez l'EDI et ouvrez la solution à partir du menu Fichier, Fichiers récents, si elle ne démarre pas automatiquement.
  6. Cliquez sur le dossier Projet de l'Explorateur de solutions et vérifiez la propriété du chemin d'accès dans les propriétés en bas. Il fera maintenant référence au nouveau dossier du projet.

Cela a fonctionné pour moi.

Solution éprouvée pour l'extension Visual Studio pour Data Tools pour la Business Intelligence (SSDT-BI 2013):

  1. Déplacez le dossier du projet vers son nouvel emplacement (ne renommez rien encore)
  2. Dans l'Explorateur de solutions, renommez le projet / la solution.
  3. Fermez (et enregistrez) le projet récemment renommé.
  4. Renommez le dossier et le fichier .sln du projet.
  5. Utilisez un éditeur de texte et ouvrez le fichier de solution de projet récemment renommé (.sln) (j'ai utilisé Notepad ++)
  6. À la ligne 6, vous verrez: "Project {fdjfksdjk4387! ...}}", "OLDPROJECT", "" OLDFOLDER \ OLDPROJECT.rptproj ". Renommez tout avec les nouveaux noms utilisés à l'étape 4. (c'est-à-dire ... = "NEWPROJECT", "NEWFOLDER \ NEWPROJECT.rptproj" ...)
  7. c'est tout!

Testé à 100% et a parfaitement travaillé sur mon cas.

REMARQUE: Impossible de confirmer s’il fonctionne avec différents modèles de projet et versions Visual Studio. Comme toujours, faites tout d’abord tout sauvegarder.

Pour ceux qui utilisent Visual Studio + git et souhaitent conserver l'historique des fichiers (travaux renommant les projets et / ou les solutions):

1) Fermez Visual Studio

2) Dans le fichier .gitignore, dupliquez tous les chemins ignorés du projet que vous souhaitez renommer avec des versions renommées de ces chemins.

3) Utilisez la commande git move comme ceci:

git mv <old_folder_name> <new_folder_name>

Voir la documentation pour des options supplémentaires: https://git-scm.com/docs/git -mv

4) Dans votre fichier .sln: Recherchez la ligne définissant votre projet et modifiez le nom du dossier dans chemin. La ligne devrait ressembler à quelque chose comme:

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "<Project name>", "<path-to-project>\<project>.csproj"

5) Ouvrez Visual Studio, cliquez avec le bouton droit de la souris sur le projet - > Renommer

6) Renommez ensuite les espaces de noms. J'ai lu que le resharper a quelques options pour cela. Mais la simple recherche / remplacement a fait le travail pour moi.

7) Supprimez les anciens chemins .gitignore

@ Solution andersjanmyr: vous pouvez appuyer sur Alt + Entrée pour afficher la page de propriétés du projet non disponible et définir le "chemin du fichier". la propriété là-bas; puisqu'il n'est pas disponible dans le menu contextuel clic-droit du projet non disponible (sous VS2008).

J'ai écrit un petit outil qui automatise toutes ces étapes. Prend également en charge la subversion pour le moment.

Vous trouverez des informations sur les versions actuelles ici Renommer un projet Visual Studio

Les dernières versions peuvent désormais être téléchargées à partir de la page de téléchargement de Visual Studio Project Renamer

Les commentaires sont très appréciés.

Bien que cette question ait déjà été résolue, je souhaitais partager mon approche pour résoudre ce problème. J'ai souvent eu le même problème de renommer un projet en VS et d’éditer le nom du dossier, le nom du projet et le fichier .sln afin d’y parvenir. Je viens d'écrire un script VBScript qui accomplit tout cela. Vous devez faire attention aux chaînes que vous choisissez de remplacer.

EDIT: il vous suffit de placer le fichier .vbs dans le même répertoire que le fichier .sln de la solution.

'Script parameters'
Solution = "Rename_Visual_Studio_Project" '.sln'
Project = "Rename_Visual_Studio_Project" '.csproj'
NewProject = "SUCCESS"

Const ForReading = 1
Const ForWriting = 2

Set objFso = CreateObject("Scripting.FileSystemObject")
scriptDirr = objFso.GetParentFolderName(wscript.ScriptFullName)

'Rename the all project references in the .sln file'
Set objFile = objFso.OpenTextFile(scriptDirr + "\" + Solution + ".sln", ForReading)
fileText = objFile.ReadAll
newFileText = Replace(fileText, Project, NewProject)
Set objFile = objFSO.OpenTextFile(scriptDirr + "\" + Solution + ".sln", ForWriting)
objFile.WriteLine(newFileText)
objFile.Close

'Rename the .csproj file'
objFso.MoveFile scriptDirr + "\" + Project + "\" + Project + ".csproj", scriptDirr + "\" + Project + "\" + NewProject + ".csproj"

'Rename the folder of the .csproj file'
objFso.MoveFolder scriptDirr + "\" + Project, scriptDirr + "\" + NewProject

Ce qui a fonctionné pour moi en 2017:

  • Fermer la solution VS
  • Répertoire renommé des projets en solution.
    • (appuyez sur le changement de contrôle de source - git dans mon cas)
  • éditez le fichier sln dans l’éditeur de texte (hors VS2017) en changeant le nom du répertoire.
  • Réouverture de la solution dans VS

Cela disait quelque chose comme " en rajoutant un projet ", j'ai tout reconstruit et tout était prêt à partir.

REMARQUE: ce correctif concerne Visual Studio 2008, mais devrait fonctionner ici.

  1. À l'aide de l'Explorateur Windows, renommez les deux dossiers de solution (le dossier parent et le dossier enfant) en nouveau nom de solution.
  2. Supprimez le fichier .sln situé dans le dossier parent.
  3. Dans Visual Studio, sélectionnez Fichier | Ouvrir un projet.
  4. Accédez au nouveau dossier que vous venez de renommer et ouvrez le fichier .csproj (situé dans le dossier enfant).
  5. Cliquez avec le bouton droit sur le nom du projet et renommez-le comme vous le souhaitez. (Doit avoir le même nom que le dossier de l’étape 1).
  6. Sélectionnez Fichier | Fermer la solution. Une boîte de dialogue vous demandera si vous souhaitez enregistrer les modifications apportées au fichier .sln . Cliquez sur Oui.
  7. Dans la boîte de dialogue Enregistrer le fichier sous, pointez sur le dossier PARENT récemment renommé et cliquez sur Enregistrer. (REMARQUE: assurez-vous que le fichier .sln porte le même nom que le dossier. Non requis, mais maintient la cohérence.)

FAIT.

Lors de l'utilisation de TFS, l'étape 2 consiste à renommer le dossier dans le contrôle de source, puis à obtenir le dernier avant de rouvrir la solution.

Nous avons récemment mis en ligne une version bêta d'une extension VS gratuite qui effectue ce travail à votre place. Jetez un coup d'œil à VS Gallery: Télécharger une galerie

Eh bien, je l'ai fait à ma façon

     
  • Fermer Visual Studio 2012
  •  
  • Renommez votre sous-répertoire en nom préféré sous .sln
  •  
  • Supprimer le fichier * .suo
  •  
  • Ouvrez à nouveau la solution, corrigez les propriétés du ou des projets chargés afin de respecter le nouveau nom de sous-répertoire
  1. Renommez le projet dans la solution et le dossier du projet

  2. Supprimer le projet de la solution

  3. Ajouter un projet existant à la solution (votre projet renommé)

Cela fonctionne pour moi. TFS suivra également le nouveau projet.

Ouvrez le fichier .sln dans un fichier texte et, dans la ligne suivante, remplacez le nom de votre nouveau dossier. Projet ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "" Ricky "", ".

J'ai dû faire ça plusieurs fois. Il est vraiment utile de pouvoir réorienter un projet existant, mais aussi de renommer du texte dans des espaces de noms, des fichiers et des dossiers. Utiliser une recherche et un remplacement récursifs à partir du dossier racine signifie que le changement de nom ne rompt pas les liens avec les projets dans les fichiers de solution et les références de projet.

À cette fin, j'ai créé un projet dans ce but. L'application s'efforce également d'ignorer les dossiers de contrôle de version tels que .git, .svn et le fichier de paramètres .vs. Plus d'infos dans le fichier README.

https://github.com/garethrbrown/vs-project-rename

Exemple

Après avoir changé le nom du dossier, ouvrez le fichier .sln dans le bloc-notes et changez le chemin d'accès en nouveau chemin.

Des problèmes similaires se posent lorsqu'un nouveau projet doit être créé et que vous souhaitez un nom de dossier de projet différent du nom du projet.

Lorsque vous créez un nouveau projet, il est stocké dans

.
./path/to/pro/ject/YourProject/YourProject.**proj

Supposons que vous souhaitiez l'avoir directement dans le dossier ject :

./path/to/pro/ject/YourProject.**proj

Ma solution consiste à créer le projet avec le nom de la dernière partie du chemin, de manière à ne pas créer de répertoire supplémentaire:

./path/to/pro/ject/ject.**proj

Lorsque vous renommez le projet à partir de Visual Studio, vous atteignez votre objectif sans avoir à quitter VS:

<*>

L'inconvénient de cette approche est que vous devez également ajuster l'espace de nom par défaut et le nom du fichier binaire de sortie, ainsi que la mise à jour des espaces de nom dans tous les fichiers inclus dans le modèle de projet.

J'utilise VS 2013 et TFS 2013.

Je l'ai fait comme ça:

  1. Ouvrez Visual Studio sans ouvrir la solution elle-même et utilisez Source Control Explorer pour rechercher et renommer les dossiers de projets
  2. Double-cliquez sur le fichier de solution dans l'Explorateur de contrôles source pour ouvrir une solution.
  3. Vous avez une question: "Des projets ont récemment été ajoutés à cette solution. Voulez-vous les obtenir à partir du contrôle de source? & Quot ;, et vous choisissez Oui
  4. Maintenant, le dossier et la structure du projet sont là, mais maintenant les fichiers, donc maintenant vous obtenez la dernière version du contrôle de source
  5. Essayez de créer et de valider les modifications.

Il existe une approche plus simple qui a été testée dans VS 2013 Update 1 et applicable aux projets connectés à TFS:

  • Ouvrez VS mais laissez la solution fermée
  • Ouvrez Source Explorer et renommez le dossier souhaité (la solution sera fermée pour vous si vous ne l'avez pas déjà fermé en premier)
  • Cliquez avec le bouton droit de la souris sur la solution (dans Source Explorer également), puis sélectionnez Archiver
  • .
  • Ouvrez la solution, vous apprendrez que de nouveaux projets ont été ajoutés et acceptez les modifications.
  • Supprimez le projet de la solution et ajoutez-le à nouveau, puis archivez-le
  • Vérifiez que les références internes sont correctes

Le moyen le plus simple consiste à accéder à la propriété de la fenêtre, changer le nom des espaces de noms par défaut, puis le renommage est effectué

1-Renommez le projet en dehors de VS. 2-éditez votre_nom_projet.sln avec un éditeur de texte, renommez le chemin en nouveau chemin

J'ai fait ce qui suit:

  1. Renommez le projet depuis vs2013. (facultatif / inutile)

  2. Exportez le projet en tant que modèle.

  3. Fermez la solution.

  4. rouvrez la solution

  5. Créez un projet à partir du modèle enregistré et utilisez le nom de votre choix.

  6. Supprimez de l’explorateur de solutions le projet précédent.

À ce stade, j'ai essayé de compiler la nouvelle solution. Pour ce faire, je devais copier manuellement certaines ressources et en-têtes dans le nouveau dossier de projet à partir de l'ancien dossier de projet. Faites-le jusqu'à ce qu'il compile sans erreur. Ce nouveau projet a maintenant enregistré le " .exe " fichier dans le dossier précédent. *

Alors - >

  1. Accédez à l'explorateur Windows et copiez manuellement le fichier de solution de l'ancien dossier de projet dans le nouveau dossier de projet.

  2. Fermez la solution et ouvrez-la à partir du nouveau projet.

  3. Modifiez la configuration en (x64) si nécessaire.

  4. Supprimez le dossier du projet portant l'ancien nom du dossier de la solution.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top