关于CQRS的查询方面

时间:2011-09-19 09:29:31

标签: c# wcf architecture wcf-data-services cqrs

我相信将查询端与命令端分开的优点。对于查询方面,我们可以为客户端提供最优化形式的所需信息;这使它变得快速而简单。在我的例子中,我使用了一个非常简单的查询端实现,这基本上意味着我想使用与命令端相同的数据库。

我的问题是如何实现查询方面,这就是我的想法:

1 /我的第一个想法是使用WCF数据服务,该服务基于在数据库视图上生成的实体框架模型。然后我会为特定的UI创建特定的视图。然后,一个视图可以合并来自各个表的数据。但这看起来非常有限,因为你无法将参数传递给视图,对于大多数查询我当然需要传递参数。

2 / WCF数据服务,基于在数据库表上生成的实体框架模型。但是,查询模型将与用于命令端的查询模型相同。并且您不会以最适合特定UI的方式获取信息。

3 / WCF数据服务,基于在数据库存储过程上生成的实体框架模型。但接下来还有额外的工作要揭露它们;并且调用它们也有点奇怪(魔术字符串)。

为了帮助我做出决定,我很乐意听取您的意见,看看揭露我的查询方面的最佳方式是什么。谢谢!

1 个答案:

答案 0 :(得分:1)

我选择1.为您的应用程序创建的特定查询创建完全非规范化的视图。

当你说你无法将参数传递给视图时你是什么意思?为什么不能对视图运行常规查询?