Используйте MediatR и CQRS в приложении-службе Windows - PullRequest
0 голосов
/ 05 июня 2018

Я видел, как комбинация MediatR и CQRS используется в основном в веб-проектах (особенно в проектах MVC).Мы можем вызвать Send метод MediatR внутри действия контроллера без проблем.

var result = await _mediator.Send(command);

Подходит ли использование этой комбинации в приложении-службе Windows?Я не могу найти ни одной статьи, которая использует MediatR и CQRS в приложении службы Windows.

Ответы [ 2 ]

0 голосов
/ 17 июля 2018

Мне кажется, я понимаю, откуда исходит ОП.

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

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

Если это приводит к очень длинному обработчику, то непрерывно рефакторинг по мере обнаружения новых абстракций и возможностей для устранения дублирования кода.Это будет точно такой же подход, как и в веб-приложении на платформе MediatR.

0 голосов
/ 06 июня 2018

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

...