У меня есть смарт-клиент .NET WPF, вызывающий веб-сервис .NET WCF.Веб-служба выполняет большую часть работы и возвращает небольшое количество информации клиенту.Таким образом, он не совсем отличается от браузера.
Клиент вызывает веб-сервис, и в данный момент веб-сервис выполняет некоторую работу и возвращает объект «результат».Вещи становятся сложными, и я думаю, что это потому, что я не применяю CQS (обратите внимание, я говорю о CQS, а не CQRS на данном этапе).Я хотел бы реорганизовать вещи, чтобы упростить и внедрить CQS. Я могу с радостью изменить контракты WCF на этом этапе, чтобы сделать это.
Однако это может означать, что клиентское приложение "отправиткомандное сообщение "(т. е. вызов метода команды в веб-сервисе), а затем" запрос "(вызов другого метода в том же веб-сервисе), что делать дальше.Мне кажется это ненужным;Стиль request / response-style - это довольно распространенный стиль (например, браузеры), который, если задуматься, технически нарушает CQS.Я думаю, что в моем случае, предоставляя операции внутри веб-службы и следуя CQS, можно немного обмануть систему для реальных вызовов веб-службы между ними.
Это приемлемо?