我想支持NHibernate中“截断图”的级联更新。 假设我有一个Student实体和一个拥有Students系列的Class实体。学生集合映射为“全部级联”。现在,假设在客户端中只更改了一个类实体,所以我希望客户端只能发送没有包含学生的类实体。我的方法是让客户端发送带有Students属性的类实体,并让DAL理解应该忽略Students集合。 不幸的是,当NHibernate在给予session.Merge时获得null属性class.Students时,它会通过将子学生的FK设置为null和/或删除它们来断开子学生与父类的连接(取决于特定的级联选项)。 我希望NHibernate只有在获得空集合时才会表现得那样,而不是在集合无效时。 有办法解决这个问题吗?例如。通过告诉NHibernate以某种方式在合并期间跳过无效的属性?
答案 0 :(得分:0)
您可以在Class实体中为Student集合设置inverse = "true"
,以便它不会清除FK。