我正在为我的项目使用WCF,我需要通过它传输一些实体。
事情是,他们中的一些人在里面有一个列表,有大量的项目,等等,我不能通过WCF传递它,因为它的大小。
我如何通过代码不从数据库加载给定属性,而是加载所有其余属性?
答案 0 :(得分:1)
默认情况下,NH列表是延迟加载的 - 因此,除非您另行指定,否则不会加载列表。
但是,该属性将是一个无法序列化的IProxy。如果你想要,你可以在该特定属性上设置[XmlIgnore]或[NotSerializable](不确定它是如何通过wcf发送的)。
话虽如此 - 确实更喜欢使用DTO而不是通过网络发送您的实体。有关您不应发送实体的原因的详情,请参阅this。
答案 1 :(得分:0)
实际上由于sirrocco我已经忍受了。 我的一个朋友帮我找到了这个:
http://www.junasoftware.com/blog/nhibernate-setresulttransformer-and-dto.aspx