Внедрить зависимости в сущности mongodb - PullRequest
0 голосов
/ 29 февраля 2012

Я начал использовать Mongodb в приложении, которое в настоящее время использует NHibernate, Sql Server и MVC.

Мне бы хотелось отойти от жирных контроллеров и начать внедрять больше логики в мои сущности.

Как таковой, я бы хотел вводить моим сущностям сервисы, когда они были получены из mongodb.

Это можно сделать со слушателями в NHibernate, но есть ли такой механизм в драйвере C #, который я могу использовать для достижения этого в MongoDB?

Ура, Byron

1 Ответ

0 голосов
/ 29 февраля 2012

добавление логики в мои сущности

Это плохая идея, так как это нарушает Принцип единой ответственности , смешивает данные с поведением (что делает код труднымдля проверки), и поскольку сущности обычно недолговечны, они обычно не должны разрешаться контейнером DI.

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

Вот отличный ответ Марк Симанн о логике в сущностях.

...