2013-02-09 93 views
0

我有一个WCF应用程序,有一堆域实体(由NHibernate映射)和服务合同。目前我直接通过服务合同向WCF客户展示实体。但是这使我遇到了WCF数据合同的许多限制,特别是与序列化相关的限制。例如圆形图限制,已知类型等。通过WCF服务暴露的对象是否仅仅是DTO?

看来更好的方法是使用实​​体在服务器端并使用DTO在WCF服务器和客户端之间传输对象。我对吗?这是必须的吗?

回答

3

WCF是基于消息的系统 - 它基本上通过XML序列化的数据消息连接客户端和服务器。因此,WCF只能来回发送静态数据 - 它不是“远程过程调用”或“远程对象”系统,您可以将功能从静音转移到服务器并返回。

因为任何WCF传输都必须是XML可序列化的,它实际上只是关于数据 - 所以是的 - WCF最适合只发送DTO样式的数据对象。

相关问题