NHibernate会话管理/模式

时间:2011-12-12 00:25:41

标签: asp.net-mvc fluent-nhibernate

我一直在谷歌上寻找一些关于可以与NHibernate一起使用的存储库和工作单元模式的答案。我找到了一些很好的例子,但仍然存在根本问题。我们有一个业务层,由WCF服务,Windows服务和MVC项目使用。现在我需要使用存储库和工作单元单元来实现nhibernate作为我的orm工具。我还需要为每种技术使用正确的contexttype(web / call / ...)。任何人都可以指点我一些文章或给我一些可以实现这一目标的指针。请注意,我需要使用与WCF调用,Windows服务和MVC项目相同的业务层。

1 个答案:

答案 0 :(得分:0)

您需要决定NHibernate会话的生命周期。如果仅在调用BL层的持续时间内,您可以使用using(session.Open)包装BL调用。如果您的nhibernate会话应该持续更长时间(例如,在您的Web会话期间),您将需要在MCV项目中处理实例化和处理更长的nhibernate会话。希望这会有所帮助。