我有一个调用 .NET WCF Web 服务的 .NET WPF 智能客户端。Web 服务完成大部分工作并将少量信息返回给客户端。因此,它与浏览器并不完全不同。
客户端调用 Web 服务,此时 Web 服务会做一些工作并返回一个“结果”对象。事情变得越来越复杂,我认为这是因为我没有应用 CQS(注意我现在说的是 CQS 而不是 CQRS)。我想重构一些东西以简化并引入 CQS。我仍然可以很高兴地更改 WCF 合同,以便这样做。
但是,这表明客户端应用程序将“发送命令消息”(即在 Web 服务上调用命令方法),然后“查询”(在同一 Web 服务上调用不同的方法)下一步该做什么. 我觉得这是不必要的;请求/响应样式是一种非常常见的样式(想想浏览器),如果您考虑一下,它在技术上会破坏 CQS。我在想,在我的情况下,在 Web 服务中提供操作并遵循 CQS,可以为两者之间的实际 Web 服务调用稍微欺骗系统。
这可以接受吗?