Возьмем этот простой надуманный пример:
UserRepository.GetAllUsers (); UserRepository.GetUserById ();
Неизбежно у меня будут более сложные «запросы», такие как:
//returns users where active=true, deleted=false, and confirmed = true
GetActiveUsers();
Мне сложно определить, где заканчивается ответственность репозитория. GetActiveUsers () представляет собой простой «запрос». Принадлежит ли он к репозиторию?
Как насчет чего-то, что связано с некоторой логикой, например:
//activate the user, set the activationCode to "used", etc.
ActivateUser(string activationCode);