Я создаю новое приложение со слоем/сборкой репозитория, слоем/сборкой служб и сборкой пользовательского интерфейса.Где я могу определить Enums?
Так что я в конечном итоге с пространствами имен, таких как:
App.UI App.Biz.Services App.Data.Repositories
А потом я перечислений для аргументах, которые используются все 3 слои. Единственное место, которое имеет смысл, - это поместить их в монтажную секцию Cross. (определите их в слое данных слишком низко, так как пользовательский интерфейс не должен иметь прямого ссылки на них, определенного в Сервисах, слишком высок для уровня репозитория, который не должен ссылаться вверх).
Но ... какое пространство имен в Common? Пространства имен в основном следует использовать для определения проблем, а не тип ... Я всегда использовал что-то вроде:
namespace App.Common.Enums {...}
, но он всегда чувствовал себя немного хак, который работает для меня, но не очень хорошо в большом org, где все генерируют Enums, и если мы поместим их все в папку Enums, это сделает папку с кодом сложнее понять позже.
Любые предложения?
Спасибо, я думаю, что зеркало несколько то, что я уже делаю (хотя я использую Common, а не Shared, и вижу значения просто Shared, а не Data, так как они используются на всех слоях: XAct.Common сборка, содержащая XAct.Common.Enums XAct.Common.Entities (только для интерфейсов - не POCOs или другой - как для обоих объектов, так и для объектов ValueObject ... не может быть связано с XAct.Common.Entities.ValueObjects) XAct.Common.Exceptions XAct.Services - для интерфейсов служб XAct.Data.Repositories -. для интерфейсов Хранилища не делать достаточно Interop, чтобы знать о том, что часть – Ciel
Woops на форматирование.. .. – Ciel