Я немного застрял в луковой архитектуре.
Скажем, я разрабатываю приложение, в котором пользователь может зарегистрировать учетную запись, войти в систему и поддерживать свою учетную запись (например, изменить номер телефона).
Однако, пока они вошли в систему, они могут выполнять другие действия в приложении (например, создавать продукты, добавлять записи в блог, отправлять сообщения с прикрепленными фотографиями и т. д.).
Я изо всех сил пытаюсь определить бизнес-логику, и вот почему.
Все службы приложений сохраняются в базе данных Postgresql
.
Все функции управления пользователями и вход в их учетную запись выполняются LDAP 389 Directory Server
. Я буду использовать пакет Novell.Directory.Ldap
, так как он будет работать на моно, а поддержка System.DirectoryServices.Protocols
пока отсутствует.
И база данных приложения, и сервер каталогов имеют уникальные таблицы.
Нужно ли размещать в App.Domain.Entities как объекты базы данных приложений, так и модели службы каталогов LDAP?
С технической точки зрения у меня есть 2 разных типа баз данных с разными типами моделей.
Не совсем уверен, как подойти к этому.
Моя структура решения:
- Domain
- App.Domain.Entities
- Приложение.Домен.Интерфейсы
- Infrastructure
- App.Infrastructure.Data (FluentNHibernate)
- App.Infrastructure.DependecyResulution (SimpleInjector)
- Приложение.Инфраструктура.Интерфейсы
- App.Infrastructure.Logging (NLog)
- App.Infrastructure.LDAP (Novel.Directory.Ldap)
- Services
- App.Services.Interfaces
- Web
- App.Web.UI (ASP.NET MVC 4 Razor)
Я почти уверен, что делаю это неправильно. Может кто-нибудь указать мне правильное направление с каким-то псевдопримером. например Куда идут модели и т.д.
заранее спасибо