【发布时间】:2009-06-03 16:59:58
【问题描述】:
Unit of Work 模式是一种在上下文中跟踪域上所有操作并在您(可能)完成复杂逻辑时一次性应用所有操作的方法。
当与 ORM(例如 NHibernate)一起使用时,最好使用共享 ISession(或 Linq 2 Sql 中的 DataContext)来实现工作单元,该共享 ISession(或 Linq 2 Sql 中的 DataContext)用于对底层数据库的每个操作。
正确实施可能很棘手,尤其是在处理服务器应用程序时,主要是 ASP.Net MVC 或 ASP.Net Webforms。
我已经涉足 Rhino.Commons(面向 NHibernate)中的实现,并且我知道其他几个,但没有很好地掌握它们的优缺点。
最常用的是什么,以及如何将它们无缝集成到 ASP.Net MVC(或 WebForms,但我对 MVC 最感兴趣)中?
【问题讨论】:
-
Cheeso,这个问题不是引用的两个问题的欺骗。第一个解释了什么是 UOW。我知道它是什么。第二个更相关,但谈论的是 RhinoCommons。我在询问不同的现有实现以及如何使用它们。
标签: c# nhibernate design-patterns orm unit-of-work