Я новичок в C # (хотя я хорошо знаю Java) и столкнулся с проблемой именования пространств имен и классов / интерфейсов.
Что не сработает, так это:
- Projekt
--> (Interface) Node
--> (Namespace/Folder) Node
-----> (Class): SomethingNode : Node
-----> ...
Поскольку есть ошибка, что тип "Project.Node" и пространство имен "Project.Node" имеют одинаковые имена.
Я объясню, почему я намеренно хотел бы назвать их одинаковымиУ меня есть много классов, которые реализуют интерфейс "Узел".Все эти классы должны быть в одном пространстве имен, так почему бы не назвать их «Узлом», подумал я.Интерфейс «Узел» должен находиться в корневом пространстве имен проекта, потому что он используется другими классами, и я не хочу, например, перемещать интерфейс «Узел» в «Project.Node.Node», потому что я думаю, что было бы глуповсегда импортируйте "Project.Node" только потому, что мне нужен интерфейс.
Итак, мой вопрос, как мне решить эту ситуацию?Как мне назвать мои классы / пространства имен, есть ли хороший элегантный способ сделать это, есть ли соглашения об именах для такой ситуации?