从WCF服务返回NHibernate映射类

时间:2009-02-23 10:47:43

标签: wcf nhibernate

我有一个处理数据库访问的服务器和一个使用该信息的客户端。从客户端到服务器的通信是通过WCF服务。

当从服务返回NHibernate POCO时,对象图中的所有对象都被序列化了吗?如果是这样,有没有办法改变它?

我也在考虑不返回NHibernate POCO而是返回一个只包含基本信息的对象。

在这些情况下你做了什么?

2 个答案:

答案 0 :(得分:6)

使用数据传输对象将数据从服务器移动到客户端。您的业​​务(域模型)对象不一定暴露在应用程序核心之外,但应被视为受保护资产。

您可以使用AutoMapper自动执行从业务对象到数据传输对象的转换。

答案 1 :(得分:0)

是的,你可能想要一个DTO。通常认为不将数据对象传递给外部世界会更好,但是直接将hibernate对象从服务中传递出来会给你一些奇怪的行为,特别是如果你有懒惰的加载集合。