2010-05-05 6 views
2

При использовании шаблона репозитория рекомендуется иметь один класс репозитория для каждой таблицы базы данных? Могу ли я также сопоставить один класс уровня обслуживания с одним классом репозитория. Я с трудом пытаюсь понять, сколько вещей должен иметь один репозиторий или класс уровня обслуживания.Сколько стоит класс репозитория?

Спасибо!

ответ

3

У вас должен быть один репозиторий для каждого класса, который является корневой совокупностью в вашем домене.

+1

Что такое корневой агрегат? – chobo

+0

вы можете найти информацию здесь: http://stackoverflow.com/questions/1958621/whats-an-aggregate-root – Dan

3

Репозитории не зависят от структуры вашей базы данных. Они инкапсулируют всю работу по отображению из базы данных в вашу модель домена и наоборот. Это может относиться к одной таблице базы данных, или она может поступать из 10 таблиц, это не имеет значения.

Как правило, единый репозиторий соответствует одному домену модели , но это также не является нерушимым правилом. Если у вас несколько классов домена, которые очень тесно связаны друг с другом, особенно в отношениях наследования или сдерживания, то для репозитория не редкость иметь дело с более чем одним отдельным типом. Тем не менее, неплохо попытаться придерживаться только одного, если можно.

Смежные вопросы