it-swarm.com.de

wie kann man den Namensraum des gesamten Projekts ändern?

Ich modifiziere die Demoanwendung aus diesem Artikel: http://msdn.Microsoft.com/en-us/magazine/dd419663.aspx

Ich muss alle Dateien aktualisieren, um meinen Namespace zu verwenden, zum Beispiel die Datei, die sich hier befindet:

MySolution\MyApp\DemoApp\ViewModel\MainWindowViewModel.cs

verwendet einen solchen Namespace:

namespace DemoApp.ViewModel
{
/// <summary>
/// The ViewModel for the application's main window.
/// </summary>
public class MainWindowViewModel : WorkspaceViewModel

Ich muss die Datei hier verschieben (DemoApp-Ordner entfernen):

MySolution\MyApp\ViewModel\MainWindowViewModel.cs

und auch den richtigen Namespace verwenden:

namespace MyApp.ViewModel
{
....

wie geht das im visual studio 2010?

Update ok hier ist möglicherweise doppelt vorhanden Change Project Namespace in Visual Studio Jetzt kann ich den Namespace des Projekts ändern, aber wie werden Dateien im Dateisystem verschoben? (den "DemoApp" -Ordner entfernen)

85
javapowered

Ich stelle mir ein einfaches Ersetzen in Dateien vor (Ctrl+Shift+H) wird gerade den Trick machen; Ersetzen Sie einfach namespace DemoApp durch namespace MyApp. Erstellen Sie anschließend die Lösung und suchen Sie nach Kompilierungsfehlern für unbekannte Bezeichner. Alles, was als DemoApp vollständig qualifiziert ist, muss in MyApp geändert werden.

108
Adam Maras

Gehen Sie zu einem Ort, an dem der Namespace in einer Ihrer Dateien deklariert ist. Stellen Sie den Cursor auf den Teil des Namespaces, den Sie ändern möchten, und drücken Sie F2. Dies sollte den Namespace in jeder Datei umbenennen. Zumindest hat es in meinem kleinen Demo-Projekt funktioniert, das ich erstellt habe, um diese Antwort zu testen!

Abhängig von Ihrer VS-Version kann die Verknüpfung auch sein Ctrl-R,Ctrl-R.

136
Amy

Klicken Sie einfach mit der rechten Maustaste auf die Lösung, wechseln Sie zu Eigenschaften und ändern Sie den "Standard-Namensraum" im Abschnitt "Anwendung".

 enter image description here

23
Anuja Lamahewa

Ctrl+Shift+H nicht die echte lösung.

Mit Resharper können Sie alle Namespace-Definitionen in Ihrer Lösung ändern. Dies ist der beste Weg, den ich zuvor versucht habe.

https://www.jetbrains.com/resharper/features/code_refactoring.html

2
Selçuk Ermaya

Ich habe die Ordnerstruktur mit einem Tool namens BareGrep durchgearbeitet, um sicherzustellen, dass ich alle Namensraumänderungen erhalten habe. Dies ist ein kostenloses Tool, mit dem Sie die Dateien in einer angegebenen Dateistruktur durchsuchen können.

1
Michael Murphy

Ich habe alles versucht, aber ich habe eine Lösung gefunden, die wirklich funktioniert. Es erstellt eine unabhängige Lösung mit einem neuen Namensraumnamen usw.

  1. Suchen Sie im Hauptformular den Namensraumnamen -> Rechtsklick -> Refaktor -> Umbenennen, und wählen Sie einen neuen Namen aus. Aktivieren Sie alle Kontrollkästchen und klicken Sie auf OK.

  2. Benennen Sie im Lösungs-Explorer den Lösungsnamen in einen neuen Namen um.

  3. Benennen Sie im Projektmappen-Explorer den Projektnamen in einen neuen Namen um.

  4. Schließen Sie VS und benennen Sie den Ordner (zum Beispiel in total commander) im Lösungsordner in einen neuen Namen um.

  5. Benennen Sie den alten Namen in der .sln-Datei in einen neuen Namen um.

  6. Alte .suo-Dateien löschen (versteckt)

  7. Starten Sie VS und laden Sie das Projekt

  8. Projekt -> Eigenschaften -> Ändern Sie den Namen der Assembly und den Standard-Namespace in einen neuen Namen.

0
Maros

Ich weiß, dass es ziemlich spät ist, aber für jeden, der es von nun an tun möchte, hoffe ich, dass sich diese Antwort als hilfreich erweist. Wenn Sie CodeRush Express ( kostenlose Version und 'must have') installiert haben, können Sie auf einfache Weise einen projektweiten Namespace ändern. Setzen Sie den Cursor einfach auf den Namespace, den Sie ändern möchten, und es wird ein smart tag (ein kleines blaues Kästchen) unter der Zeichenfolge namespace angezeigt. Sie können entweder auf dieses Kästchen klicken oder drücken Ctrl + Tasten, um die Option Rename anzuzeigen. Wählen Sie es aus und geben Sie dann den neuen Namen für den projektweiten Namespace ein, klicken Sie auf Apply und wählen Sie im neuen Dialogfeld und OK aus, an welchen Stellen in Ihrem Projekt Änderungen vorgenommen werden sollen. Erledigt! :-)

0
Kunal

Sie können verwenden CTRL+RCTRL+R Verwenden Sie für komplexe Namespace-Änderungen dieses Tool https://marketplace.visualstudio.com/items?itemName=vs-publisher-599079.FixNamespace

0
mko

Einfacher Weg

Visual Studio

  1. Benennen Sie den Projektnamen um, indem Sie entweder "F2 drücken" oder "Rechtsklick> Umbenennen"
  2. Klicken Sie mit der rechten Maustaste auf das Projekt und navigieren Sie zu dessen Eigenschaften. Benennen Sie "Assembly Name" und "Default Namespace" um

Mit den beiden oben genannten Schritten wird die .csproj-Datei neu generiert.

Visual Studio Code

  1. Benennen Sie Namespaces und ihre Referenzen mit Suchen und Ersetzen in allen Dateien um. Zwei Begriffe, die hier gesucht und ersetzt werden sollen

    "namespace oldProjectName" to "namespace newProjectName"
    "using oldProjectName"  to "using newProjectName"
    
  2. Benennen Sie die Projektordner nacheinander um

  3. Ändern Sie die Referenzen in .csproj-Dateien, wenn sich der Projektordner ändert
0