NHibernate中如何自定义集合类型以实现双向关系的自动维护?

2026-05-25 10:282阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1448个文字,预计阅读时间需要6分钟。

NHibernate中如何自定义集合类型以实现双向关系的自动维护?

如果使用NHibernate自带的集合类型,其中可能遇到的问题是需要在代码中手动维护双向关系,以免开发人员编写额外的代码。这实际上是集合自定义逻辑应用的一个例子。目前,我们已了解到这一点。

如果使用NHibernate自带的集合类型,其中一个问题就在于需要在代码中手动维护双向关系,迫使开发人员编写额外的代码。其实这就是集合自定义逻辑的一个应用方面。现在,既然我们已经得到了一个方便的自定义集合的解决方案,那么现在便把“自动维护双向关系”作为目标来实现一番,也算是一个非常典型的示例了。

昨天是休息天,看文章的朋友比较少,如果您遗漏了上一篇的内容,不妨再阅读一次,对理解本文会有一定帮助。

我们已经知道LINQ to SQL是如何自动维护双向关系的,它的做法是在集合被添加或删除元素时发起一个回调函数,而在回调函数内部对某些属性进行设置。我们也可以采用这种方式。不过在此之前,我们必须知道NHibernate在进行集合操作时的一些顺序,例如在加载父实体时,集合属性的set操作和集合元素的添加操作哪个在前,哪个在后。

阅读全文

本文共计1448个文字,预计阅读时间需要6分钟。

NHibernate中如何自定义集合类型以实现双向关系的自动维护?

如果使用NHibernate自带的集合类型,其中可能遇到的问题是需要在代码中手动维护双向关系,以免开发人员编写额外的代码。这实际上是集合自定义逻辑应用的一个例子。目前,我们已了解到这一点。

如果使用NHibernate自带的集合类型,其中一个问题就在于需要在代码中手动维护双向关系,迫使开发人员编写额外的代码。其实这就是集合自定义逻辑的一个应用方面。现在,既然我们已经得到了一个方便的自定义集合的解决方案,那么现在便把“自动维护双向关系”作为目标来实现一番,也算是一个非常典型的示例了。

昨天是休息天,看文章的朋友比较少,如果您遗漏了上一篇的内容,不妨再阅读一次,对理解本文会有一定帮助。

我们已经知道LINQ to SQL是如何自动维护双向关系的,它的做法是在集合被添加或删除元素时发起一个回调函数,而在回调函数内部对某些属性进行设置。我们也可以采用这种方式。不过在此之前,我们必须知道NHibernate在进行集合操作时的一些顺序,例如在加载父实体时,集合属性的set操作和集合元素的添加操作哪个在前,哪个在后。

阅读全文