1

Я работаю над проектом в C# .NET (Visual Studio 2010) с несколькими генерируемыми частичными классами, классами метаданных и т. Д. (, если вы знаете Entity Framework, вы знаете что я имею в виду)Соглашение об именах папок для имен пространства имен

Мой вопрос относится к практике корреляции пространств имен с каталогами, в соответствии с чем каждая директория обозначает пространство под-имен.

Теперь я хотел бы переместить классы метаданных в подкаталог, исключительно для организационных целей. Так как частичные классы должны существовать в одном и том же пространстве имен, подкаталогбольше не может обозначать пространство имен (, иначе он сломал бы частичные классы). Я бы отклонился от вышеупомянутой практики; не большое дело, но мне нравится придерживаться стандарта.

Есть ли соглашение, обозначающее, что данный каталог является чисто организационным?

Off руки, предварив имя каталога с «.» (точки) или «_» (подчеркиванием) представляется целесообразным, бывшие больше, чем последняя, ​​так как это может привести к неверному имени пространства имен.


@ Pheonixblade9, что-то вроде этого:

: 
| 
+- ProjectFolder/ 
| +- App.config 
| +- Packages.config 
| +- ClassA.cs 
| +- ClassB.cs 
| +- ClassC.cs 
| +- ClassD.cs 
| +- Metadata/ 
| | +- ClassA.Metadata.cs \ 
| | +- ClassB.Metadata.cs \ These are the partial classes that shouldn't 
| | +- ClassC.Metadata.cs /be namespaced differently than their respective 
| | +- ClassD.Metadata.cs/partials in the parent folder 
: : 
+0

Можете ли вы привести пример структуры каталогов? через изображение или текст будет хорошо – Codeman

+0

@ Pheonixblade9 ^^^ – Dan

+0

Спасибо! Это должно облегчить ответ на вопрос. – Codeman

ответ

0

Несмотря @JohanLarsson обеспечивая правильный ответ на 2012+, я выбрал префикс . в каталоге:

: 
+- ClassC.cs 
+- ClassD.cs 
+- .Metadata/ 
| +- ClassA.Metadata.cs 
| +- ClassB.Metadata.cs 
: : 

Это означает, что имя пространства имен, предоставляемое классам, созданным в этой папке, недействительно. Это больше неявного индикатор, чем явное правило я бы предпочел (и, как @ JohanLarsson Ответим обеспечивает), но затем снова, я лох работает 2010.

Я по-прежнему открыт для ответов, и с радостью изменит принятие к чему-то лучшему.

3
  1. Выберите папку в обозревателе решений
  2. В свойствах установить NAMESPACE Поставщиком ложной
+0

Я угадываю шаг '0.' - это обновление от VS 2010? – Dan

+0

Хорошее предложение и, безусловно, что-то для тех, кто работает в 2012 году. Когда мне удастся попасть на 2012 год, я обязательно буду использовать эту функцию, но пока я застрял в 2010 году :-( – Dan

Смежные вопросы