Разница между репозиторием и сервисом?


в чем разница между репозиторием и сервисом? Кажется, я этого не понимаю.

Я говорю о доступе к данным через уровень доступа к данным, обычно с linq to sql.

очень часто я вижу репозитории с простыми методами CRUD и сервисы с более специфичными для бизнеса методами.

мы можем взять этой сообщение в блоге в качестве примера. Если вы посмотрите на интерфейсы внизу (изображения), у него есть два репозитория и два сервиса. Как кто-нибудь знает, что куда положить?

Как я уже сказал, репозитории, кажется, больше для CRUD-подобных операций и услуг, более ориентированных на бизнес.

спасибо

3 59

3 ответа:

репозиторий по сути является фасадом для настойчивость который использует семантику стиля коллекции (добавить, обновить, удалить) для предоставления доступа к данным/объектам. Это способ отделить способ хранения данных / объектов от остальной части приложения.

сервис обеспечивает координацию или другие "услуги", которые необходимы для работы вашего приложения. Они очень отличаются тем, что службы обычно не знают, как получить доступ к данным из сохраняемости и репозиториев обычно только доступ к данным / объектам для любых служб, которые вы можете иметь.

хранилище, где хранятся данные. Сервис-это то, что манипулирует данными.

в сравнении с реальной ситуацией, если ваши деньги хранятся в хранилище в банке, хранилище является хранилищем. Кассир, который вносит, снимает и т. д.-Это услуга.

Я бы сказал, как первая попытка, в общем смысле (пока вы не дадите больше контекста, если у вас есть):

  • a хранилище где вы делаете какие-то глобальные объекты, которые будут использоваться позже.
  • a сервис является ли код бизнес-логики явным (и идеально отделенным от уровня представления и уровня базы данных ?)