我可以在WCF中使用富域模型吗?

时间:2009-11-30 19:33:12

标签: wcf architecture domain-driven-design anemic-domain-model

如果您的应用程序如下,是否可以使用DDD和富域模型:

  • Windows客户端(WPF)
  • Windows服务

与WCF进行沟通?

我习惯让DTO只有数据状态,并且在服务层内部有业务规则,但是每个人都告诉我应该有一个丰富的域模型,其中数据状态和规则/方法都在对象本身中

我只是不确定这个丰富的域模型是否适用于具有UI并通过WCF与服务进行通信的系统(如上所述)。在我的情况下,因为WCF而继续使用贫血域模型会更好吗?如果没有,您能否举例说明如何使用丰富的域模型构建它,考虑WCF,代理等?

谢谢!

1 个答案:

答案 0 :(得分:3)

一般来说,您将域对象序列化以便在WCF中传输,无论如何都是简化的DTO,而这些是客户端应用程序使用的。

您可以在客户端serialize user defined types进行反序列化,但对于大多数应用程序而言,这是不必要的。只要你不需要在你的客户端(你不应该使用一个好的DDD)对象的“丰富”行为,我觉得你可以在服务层使用丰富的设计,通过电线发送简单的DTO。