Je sais que vous pouvez le faire fichier par fichier.
Est-il possible de le faire en une seule étape pour tous les fichiers d'un projet?
Voulez-vous dire en utilisant des déclarations? Tout d’abord, notez qu’ils ne font généralement pas de mal aux utilisateurs qui prennent de la place ..__ Des outils tels que ReSharper proposent des astuces automatisées pour le faire, cependant: il y avait un lien dans le flux VS il y a quelque temps; cela revient à:
Maintenant, si vous cliquez avec le bouton droit de la souris sur la barre d’outils et sur Personnaliser ... - vous devriez pouvoir trouver MyMacros.OrganiseUsings.RemoveAndSortAll - faites-le glisser quelque part (le menu Outils peut-être aussi; vous pouvez également changer le nom après l'avoir placé).
Vous pouvez maintenant utiliser cette option pour exécuter la commande Supprimer et trier pour une solution complète. Un grand gain de temps.
==== code ====
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module OrganiseUsings
Public Sub RemoveAndSortAll()
On Error Resume Next
Dim sol As Solution = DTE.Solution
For i As Integer = 1 To sol.Projects.Count
Dim proj As Project = sol.Projects.Item(i)
For j As Integer = 1 To proj.ProjectItems.Count
RemoveAndSortSome(proj.ProjectItems.Item(j))
Next
Next
End Sub
Private Sub RemoveAndSortSome(ByVal projectItem As ProjectItem)
On Error Resume Next
If projectItem.Kind = Constants.vsProjectItemKindPhysicalFile Then
If projectItem.Name.LastIndexOf(".cs") = projectItem.Name.Length - 3 Then
Dim window As Window = projectItem.Open(Constants.vsViewKindCode)
window.Activate()
projectItem.Document.DTE.ExecuteCommand("Edit.RemoveAndSort")
window.Close(vsSaveChanges.vsSaveChangesYes)
End If
End If
For i As Integer = 1 To projectItem.ProjectItems.Count
RemoveAndSortSome(projectItem.ProjectItems.Item(i))
Next
End Sub
End Module
Les autres réponses faisant référence aux extensions Productivity Power Tools n'entrent pas dans les détails pour savoir comment procéder. Voici quelques instructions pour Visual Studio 2013, 2015 et 2017:
Commencez par ouvrir la boîte de dialogue Outils> Extensions et mises à jour ... dans Visual Studio, sélectionnez Online dans la barre de gauche, puis recherchez "Productivity Power Tools" dans la galerie Visual Studio. . Installez l'extension et redémarrez VS.
Vous pouvez également télécharger et installer manuellement les extensions pour votre version de Visual Studio:
Outils de productivité 2013
Productivity Power Tools 2015
Productivity Power Tools 2017
Pour VS2017, vous pouvez également télécharger l'extension Power Commands séparément des autres éléments du pack Power Tools:
Commandes d'alimentation pour Visual Studio (VS2017)
Sachez qu'au moment de la rédaction, la version VS2017 ne fonctionnait pas avec les projets/solutions .Net Core.
Une fois l'extension installée, cliquez avec le bouton droit de la souris sur la solution dans l'Explorateur de solutions, puis sélectionnez Commandes de gestion> Supprimer et trier les utilisations.
Cela peut prendre un certain temps, en particulier pour les grandes solutions; il ne conserve pas non plus les fichiers modifiés ouverts (donc pas d'annulation), donc assurez-vous de tout mettre dans le VCS de votre choix avant l'exécuter, de sorte que vous puissiez annuler les modifications apportées quelque chose ne va pas!
Récemment, j’utilise l’extension Format Tous les fichiers , qui vous permet d’exécuter Format Document, Supprimer et trier les utilisations et une autre commande personnalisée de votre choix (le cas échéant, défini dans les préférences du VS).
Cela semble fonctionner très bien, mais encore une fois, pas d'annulation, donc assurez-vous de tout mettre dans votre VCS de choix avant l'exécuter.
Il n'y a aucun besoin de plugins dans VS 2017. Cliquez sur l'icône en forme d'ampoule à côté d'une instruction using, puis cliquez sur Solution
à côté de Fix all occurrences in
part.
Pour Visual Studio 2010, vous pouvez télécharger l'extension "Supprimer et trier à l'aide de" de la galerie Visual Studio.
http://visualstudiogallery.msdn.Microsoft.com/en-us/cb559aa8-d976-4cc2-9754-5a712f985d16
Fonctionne bien pour moi
Si vous voulez dire «utiliser», les commandes de puissance contiennent cette fonctionnalité + un bateau charge plus.
pour une version plus récente, y compris 2017, essayez l'extension "Format Tous les fichiers" cela a très bien fonctionné pour moi.
Voici une petite amélioration sur le script ci-dessus pour VB.NET. Assurez-vous d’avoir installé le Productivity Power Tools .
Private Sub RemoveAndSortSome(ByVal projectItem As ProjectItem)
On Error Resume Next
If projectItem.Kind = Constants.vsProjectItemKindPhysicalFile Then
If projectItem.Name.LastIndexOf(".cs") = projectItem.Name.Length - 3 Then
Dim window As Window = projectItem.Open(Constants.vsViewKindCode)
window.Activate()
projectItem.Document.DTE.ExecuteCommand("Edit.RemoveAndSort")
window.Close(vsSaveChanges.vsSaveChangesYes)
ElseIf projectItem.Name.LastIndexOf(".vb") = projectItem.Name.Length - 3 Then
Dim window As Window = projectItem.Open(Constants.vsViewKindCode)
window.Activate()
projectItem.Document.DTE.ExecuteCommand("EditorContextMenus.CodeWindow.OrganizeImports.RemoveandSortImports")
window.Close(vsSaveChanges.vsSaveChangesYes)
End If
End I
J'utilise Visual Studio 2015 et j'ai trouvé un outil appelé BatchFormat: https://marketplace.visualstudio.com/items?itemName=vs-publisher-147549.BatchFormat
Cela a parfaitement fait le travail.
Installez l'outil, puis cliquez avec le bouton droit sur votre solution dans l'explorateur de solutions, puis en haut du menu, vous voyez le format de lot:
Quoi que vous sélectionniez soit appliqué à chaque fichier de votre solution, comme vous pouvez le voir sur la capture d'écran, il existe d'autres options, vous pouvez également formater chaque document.