Der schnellste Weg, um Namespaces mit ReSharper zu aktualisieren?

75

Ich habe einige Umgestaltungen und Reorganisationen durchgeführt und eine Reihe von Dateien verschoben.

Ich möchte jede Datei aktualisieren, damit sie den "richtigen" Namespace entsprechend ihrem neuen Speicherort hat. Mit ReSharper kann ich in jede Datei gehen und es zeigt mir, dass die Namespaces falsch sind, aber auf diese Weise muss ich jede Datei einzeln ausführen.

Gibt es überhaupt eine Möglichkeit, Namespaces für jede Datei in einem Ordner oder Projekt zu aktualisieren?

Leora
quelle

Antworten:

147

UPDATE: Jeder, der diese Frage mit R # 5.0 und höher liest, sollte beachten, dass dies jetzt eine Funktion ist :

ReSharper -> Refactor -> Namespaces anpassen ...

Iain Holder
quelle
21
+1 - Wählen Sie die Dateien aus und klicken Sie mit der rechten Maustaste -> Refactor -> Namespaces anpassen. Die Option ist ausgegraut, wenn Sie sich in einer Datei im Editor befinden
Sam Holder
12
Allein diese Funktion ist der Grund, warum ReSharper sein Geld wert ist. Gesamte Zeitersparnis bei der Umstrukturierung Ihrer Lösungen.
Martin Devillers
5
Wahrscheinlich ist auch darauf hinzuweisen, dass Sie einen Namespace-Refactor auf eine Lösungs- oder Projektebene erweitern können, indem Sie einfach den entsprechenden Container im Projektmappen-Explorer markieren.
Chris Pickford
3
Um Chris Pickfords Kommentar noch weiter zu erweitern: Ab ReSharper 9 können Sie Namespaces auch auf Ordner- oder Dateiebene umgestalten. Wählen Sie im Projektmappen-Explorer den entsprechenden Container aus, klicken Sie mit der rechten Maustaste und wählen Sie "Refactor> Namespaces anpassen".
Mass Dot Net
6

Dies ist nicht ganz das, was Sie tun möchten ... aber hoffentlich ist es hilfreich.

Wechseln Sie zur Klassenansicht und benennen Sie den Namespace mit Strg + R, R um. Dieser Namespace wird in allen Dateien / Ordnern aktualisiert, in denen er verwendet wird. Solange Ihre Namespaces konsistent sind, sollte das gleiche Ergebnis erzielt werden wie beim Ändern aller Namespaces in einem Ordner.

Wenn Ihre Namespaces nicht konsistent sind und Sie nur aufräumen, haben Sie leider viel Klick vor sich (oder hinter sich, da Sie dies wahrscheinlich bereits getan haben).

Mark Worth
quelle
1

Ich denke, dass R # diese Funktion nicht hat. Sie können STRG-UMSCHALT-H verwenden, um die Zeichenfolge zu finden und zu ersetzen.

ema
quelle
können Sie nur in einem Ordner finden / ersetzen?
Leora
1
Ja, Sie können in einem Ordner suchen / ersetzen: Klicken Sie im Dialogfeld "In Dateien suchen" auf die Schaltfläche mit einer Ellipse neben dem Feld "Suchen in" und geben Sie dann Ihre
Zielordner an