ASP.NET MVC 2 Где поставить логику - PullRequest
3 голосов
/ 04 января 2011

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

Логика возникает при создании записей на основе определенных полей этой записидругие записи должны быть созданы.

В настоящее время я использую шаблон репозитория с ORM, и самое простое место для размещения этой логики - в моем классе репозитория, но я чувствую, что это довольно слабое местоважные правила, я бы поместил это непосредственно в мои классы частичной модели, которые имеют мои валидацию и метаданные, но затем я должен вызывать методы в моем контроллере или хранилище, и это может распространять слишком много знаний о реализации на эти уровни.* Каковы ваши лучшие советы для меня?

Спасибо!

1 Ответ

4 голосов
/ 05 января 2011

Между контроллером и репозиториями может быть сервисный уровень.Хранилище выполняет простые операции CRUD с вашей моделью.Служебный метод может использовать несколько простых вызовов репозитория для составления бизнес-операции.Эта бизнес-операция будет доступна контроллеру.

...