请教一下cqrs中的一个command问题

13-07-24 zdp120
在用SOA+cqrs实现系统的时候,有一个问题弄的不是很明白,想请教一下。



在大多数的CQRS示意图中都标明ui->发出usercreatecommand->进入wcf web service中->由服务经过command bus发送usercreatecommand,然后command handler来处理该usercreatecommand请求
现在我的困惑时,ui发出的usercreatecommand,和wcf发送到command bus中的usercreatecommand,
在实现上应该不是同一个usercreatecommand吧
比如
ui发送的command应该是Soa概念中的datacontract

[datacontract]
public class usercreatecommand
{
[datamember]
public string Username{get;set;}
etc....
}

而wcf web service 中的usercommand service发出的command应该是cqrs概念中的实现了ICommand的command吧
public class usercreatecommand:ICommand
{
public string Username{get;set;}
etc....
}

[该贴被zdp120于2013-07-24 16:31修改过]

banq
2013-07-25 08:51
2013-07-24 16:29 "@zdp120
"的内容
ui发出的usercreatecommand,和wcf发送到command bus中的usercreatecommand,
在实现上应该不是同一个usercreatecommand吧 ...


图中WCF用来分别实现命令总线和查询,不同的作用,两个WCF,WCF只是.NET一种通讯接口,不应该高调出现在抛弃语言架构的语义设计层面的,建议去除,容易引起误解。