用EF操作数据库 对多张表操作是否需要事务

用EF操作数据库,1,对多张表进行操作,如果用的是同一个DB上下文,是否需要用事务,还是说DB上下文本身就有事务不需要了?2,操作多表时,是每操作完一张表后SaveCha... 用EF操作数据库 ,
1,对多张表进行操作,如果用的是同一个DB上下文,是否需要用事务,还是说DB上下文本身就有事务不需要了?
2,操作多表时,是每操作完一张表后SaveChanges()比较好还是,最后整体SaveChange()好 请全面回答,重点回答 1 问题
展开
 我来答
可以叫我表哥
2015-07-19 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
采纳数:25897 获赞数:1464978
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。

向TA提问 私信TA
展开全部
  对多张表进行操作是需要事务的。

  事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。
yajiedesign
2012-09-08 · TA获得超过286个赞
知道小有建树答主
回答量:479
采纳率:0%
帮助的人:307万
展开全部
1.同一个DB上下文本身就是事务的.

2.本身没有区别. 请根据业务需求决定.SaveChanges()时才会进行约束检查,发生异常会导致回滚.
追问
如果同一个DB上下文本身有事务,那我每操作一完张表就SaveChanges()一次,如果在最后一张表,出异常,还能回滚吗
追答
回滚到前一个SaveChanges,多个表是同一个事物,请在最后SaveChanges.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式