Ich finde, dass ich manchmal mehrere Namespaces in einem Projekt haben muss, an dem ich gerade arbeite - Gibt es irgendwelche Probleme, die entstehen können, wenn mehrere Namespaces im selben Projekt vorhanden sind?
Die Alternative hat offensichtlich mehrere Projekte (pro Namespace) in der Lösung.Mehrere Namespaces in einem Projekt
Antwort
Ja, es ist in Ordnung. Oft sind meine Namespaces an der Ordnerstruktur des Projekts ausgerichtet. Der Namespace der obersten Ebene könnte also für das gesamte Projekt identisch sein, aber es würde mehrere Unternamespaces geben.
Die Ziele von Namespaces sind (1) Organisation und (2) Vermeidung von Namenskonflikten, nicht unbedingt in dieser Reihenfolge. Dinge in mehrere Projekte zu trennen, liegt eher daran, dass Sie mehrere Binärdateien verwenden oder Code zwischen mehreren Lösungen teilen möchten. Dies sind etwas orthogonale Bedenken.
Visual Studio erstellt Namespaces in neuen .cs-Dateien automatisch unter Verwendung dieser Struktur. –
Ja viele Klassen in einem einzigen Namespace. Viele Namespaces in einem Projekt sind völlig in Ordnung. Es ist kosmetisch.
Die Antwort auf diese Frage, ohne sich mit den Best Practices vertraut zu machen, besteht darin, dass bei der Verwendung mehrerer Namespaces in einem Projekt keine technischen Probleme auftreten.
Visual Studio unterstützt jedoch nur einen Basisnamespace, der sich in den Projekteigenschaften befindet (Rechtsklickeigenschaften im Solution Explorer auf dem Projekt selbst). Wenn Sie eine neue Datei erstellen, wird sie mit diesem Standardnamespace erstellt (wenn auf root), oder der Standard-Namespace und die von Ihnen angegebene Ordnerstruktur.
Kein Problem per se, aber Sie müssen jede neue C# -Datei, die Sie dem Projekt hinzufügen, manuell überprüfen und den Namespace entsprechend ändern, wenn diese bestimmte Datei nicht den Standard-Namespace für das Projekt verwendet.
- 1. Mehrere Git Repo in einem Projekt
- 2. Mehrere Sprachen in einem Eclipse-Projekt
- 3. Rails - Savon setzt mehrere Namespaces
- 4. Mehrere Namespaces unter demselben Modul in ZF2
- 5. Mehrere Datenbanken oder Namespaces in Hbase
- 6. mehrere Alias-Namespaces in if-Anweisung
- 7. Mehrere Namespaces auf einem Element mit XSLT 1.0
- 8. Namespaces. Einrichten von Visual Studio-Projekt
- 9. Erstellen mehrere neue Projekt-APKs aus einem übergeordneten Projekt ionic
- 10. Mehrere WCF-Dienste unter einem .net-Projekt?
- 11. Namespaces in C#
- 12. Mehrere Struts2-Namespaces mit Kacheln verwenden
- 13. mehrere ausführbare Dateien aus einem Projekt
- 14. .NET Mehrere Namespaces für einzelne Klasse
- 15. Parsen XML mehrere Namespaces mit PHP SimpleXML
- 16. Mehrere XML-Namespaces im Tag mit LXML
- 17. .NET-Namespaces
- 18. Wie greife ich auf die Namespaces 'mx' oder 'fl' in einem Flex Builder Actionscript-Projekt zu?
- 19. Wie richte ich mehrere Quellordner in einem Eclipse-Projekt ein?
- 20. Wie mehrere Lösungen in einem TFS-Projekt zu organisieren
- 21. Mehrere Quellordner in einem einzigen Eclipse-Projekt mit MAVEN
- 22. Wie verpacke ich mehrere WAR-Dateien in einem Maven-Projekt?
- 23. Verwenden Sie mehrere Module in einem Android-Studio-Projekt
- 24. Kann ich mehrere PCH-Dateien in einem Projekt verwenden?
- 25. Wie entwickelt man mehrere Pip-Pakete in einem Git-Projekt?
- 26. Mehrere Apps in einem Projekt oder ein Projekt pro App in Firebase?
- 27. Visual Studio und Namespaces
- 28. pycharm mehrere Dolmetscher in demselben Projekt?
- 29. C# Namespaces in web.config
- 30. PHP Autoloading in Namespaces
"Die Alternative hat offensichtlich mehrere Projekte in der Lösung." - Das ist normalerweise eine bessere Methode. –
@MitchWheat Es scheint der "geordnete" Ansatz zu sein, aber alles, was es wirklich tut, ist meine Lösung durcheinander zu bringen. Ein größeres Problem ist, dass es beim Kompilieren mehrere Dateien erzeugt. – Acidic
Aber das ist ein ganz anderes Problem mit einer anderen Lösung. –