Я изучаю известную лунную архитектуру от Джеффри Палермо. Это не характерно для этого шаблона, но я не вижу четкого разделения между репозиториями и услугами домена. Я (ошибочно) понимаю, что хранилище относится к доступу к данным и их обслуживанию - это больше о бизнес-уровне (ссылайтесь на один или несколько репозиториев).
Во многих примерах репозиторий, похоже, имеет некоторую бизнес-логику, подобную GetAllProductsByCategoryId
или GetAllXXXBySomeCriteriaYYY
.
Для списков кажется, что служба - это просто оболочка в репозитории без какой-либо логики. Для иерархий (parent/children/children) это почти та же проблема: является ли роль репозитория для загрузки полной иерархии?