我想知道我应该在哪里使用工作单位?为什么?
想知道它最好看的地方和应该使用的地方。我正在使用类似的实现:
using (var uow = UnitOfWorkFactory.Create())
{
... transaction go here
}
(我正在使用带有实体框架的ASP.NET MVC 3)
感谢。
答案 0 :(得分:4)
工作单元允许您在多个存储库中执行多个操作,并同时为所有这些操作系统调用Save()
,这会调用SaveChanges()
,这会将工作单元转换为事务。如果在Save()
呼叫期间发生任何故障,则会回滚该操作。
因此,在您需要的任何地方使用工作单元,以确保在数据交易期间某些内容不会损坏。当您想要推迟交易直到完成一系列操作时,基本上使用一个工作单元。
这个posting非常好地概述了实体框架如何使用工作单元。