【发布时间】:2010-05-11 03:02:05
【问题描述】:
使用 NHibernate 更新子对象但不必“唤醒”父对象的正确方法是什么。假设您想尽量避免这种情况,因为父对象很大或启动起来很昂贵。
让我们假设类称为 Author(parent) 和 Book(child)。 (不过,尽量避免实例化作者)
Book 通过 Web 服务以 XML 形式返回。它被反序列化回 CLR 对象。 Book 有一个 AuthorId 属性,它允许这种情况发生。但它也有 Author 属性。
问题是,当您尝试 SaveOrUpdate() Book 并且数据库中的 author_id 被清除时,因为当对象被反序列化时 Author 为 null。这似乎是一个常见的问题。解决方法是什么?
另外, 如果您实例化 Author 并且它具有 Books 属性。您尝试更新的书已经是这些书之一(List
【问题讨论】:
标签: c# .net web-services nhibernate orm