В моем проекте у меня есть таблица «Клиенты» с 3 внешними ключами к таблице «Адреса».Один для MainAddress, один для BillingAddress и один для ShippingAddress.
Я использую шаблон единицы работы и репозитория с CustomerRepository и AddressRepository.
Иногда мне нужно работать с адресами самостоятельно, но большую часть времени они будут частью объекта домена Customers.
Мой вопрос - это вопрос разработки передового опыта.Если уровень бизнес-логики отвечает за вызов и добавление / обновление CustomerRepository и AddressRepository, или если CustomerRepository достаточно умен, чтобы добавлять / обновлять адреса, чтобы BLL требовался только вызов «AddCustomer» или «EditCustomer» и всех таблиц адресовавтоматически добавляются / обновляются?