Служба или событие? - PullRequest
       36

Служба или событие?

2 голосов
/ 17 октября 2011

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

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

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

Мои уведомления - это способ регистрации всех действий, связанных с процессом заказа ...

Использует ли под-паб общий подход / списки событий и т. Д.?

ПРИМЕЧАНИЕ. Я использую Linq To Sql и сервисный уровень для связи с моим приложением asp.net mvc, вся моя бизнес-логика / проверка / правила и т. Д. Находятся внутри моего сервисного уровня ...

1 Ответ

1 голос
/ 17 октября 2011

Оформить События домена .

Когда вы звоните client.ConfirmDeliveryDate(), это вызовет событие домена (DeliveryDateConfirmed). Тогда у вас будет класс, слушающий это событие: EmailCustomerWhenDeliveryDateConfirmed.

...