在Entity Framework中使用事务

来源:互联网 发布:编译原理 算法导论 编辑:程序博客网 时间:2024/05/29 08:34


注需要添加DAL层对using System.Transactions的引用

在Entity Framework中使用事务,将操作放在TransactionScope中,并通过Complete()方法提交事务即可。

示例代码如下:

using (BlogDbContext context=new BlogDbContext())
{
using (TransactionScope transaction =new TransactionScope())
{
context.BlogPosts.Add(blogPost);
context.SaveChanges();
postBody.ID
= blogPost.ID;
context.EntryViewCounts.Add(
new EntryViewCount() { EntryID= blogPost.ID });
context.PostBodys.Add(postBody);
context.SaveChanges();
//提交事务
transaction.Complete();
}
}

经过测试验证,在transaction.Complete()之前的代码中只要出现异常,事务就会回滚。


0 0
原创粉丝点击