0

Я создаю простой веб-сайт, чтобы лучше ознакомиться с MVC 2.0. Я делаю веб-формы с версии 1.0 и готов начать капитальный ремонт сайта веб-форм в MVC. Поэтому вы хотите создать небольшое приложение для разработки кривой обучения.Решение класса класса домена

Итак, я собираюсь создать приложение для отслеживания времени. Я использую ASP.NET MVC 2.0 и LINQ to SQL. Я планирую предоставить репозиторий и часть работы, так как я буду использовать их на большом веб-сайте.

В моей базе данных есть только 4 таблицы Категория, Проект, Назначение и Пользователь. Таким образом, у меня будут эти 4 объекта в LINQ2SQL. Затем у меня будут POCO для ProjectDetails, ProjectSummary, AssignmentDetails и т. Д. Но являются ли эти консолидированные элементы таблицы? Или каждый из них нуждается в своих репозиториях? Или они должны вписываться в совокупный репозиторий?

Позвольте мне знать, если вам нужно больше деталей

Благодаря

+0

возможно дубликат [Repository шаблона : Один класс репозитория для каждого объекта?] (Http://stackoverflow.com/questions/3524646/repository-pattern-one-repository-class-for-eachentity) или http://stackoverflow.com/questions/2327408/repository-pattern-and-multiple-related-core-entities-or-business-objects-one-r или http://stackoverflow.com/questions/1800153/single-vs-multiple-linq2sql-repositories – jfar

ответ

1

Ваш домен ПОКО не имеют иметь отношения 1-к-1 с таблиц БД. И ваши классы репозиториев не должны ограничиваться чтением/записью одной таблицы.

В домене Driven Design часто начинаются с моделями доменов первого, а затем выяснить, как сохранить те на ваш механизм хранения, будь то SQL, NoSQL, кэш-память и т.д.

+0

Поскольку их несколько способов построения модели домена, как вы решаете, каким образом это сделать. Я нашел SRP, один репозиторий (шлюз), и я уверен, что они другие. –

+0

Большинство наших моделей являются 1-к-1 для наших таблиц DB, и для них у нас есть один репозиторий для каждого, который читает/записывает в одну таблицу. В случаях, когда модель более сложна, мы имеем один репозиторий, который читает/записывает несколько таблиц в пределах одного и того же БД. Но эти репозитории сложнее поддерживать, поэтому мы стараемся свести их к минимуму. –

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