MVC EF开启事务

   using (var tran = BE.Database.BeginTransaction())
                    {
                        try
                        {
                            //批量操作前 关闭自动检测变化功能
                            BE.Configuration.AutoDetectChangesEnabled = false;
                            ReportConfig RC = new ReportConfig();
                            RC.ID = Guid.NewGuid().ToString();
                            RC.ReportName = getImportInfo.Reports[0].Name;
                            RC.ReportID = getImportInfo.Reports[0].Id;
                            RC.CreateTime = DateTime.Now;
                            RC.Creator = CurrentUser.UserAccount;
                            RC.ReportDesc = "上传PBI报表";
                            RC.ReportGroupID = groupID;
                            RC.ReportUrl = "";
                            RC.Validity = "1";
                            RC.ReportType = "PBIC";
                            BE.ReportConfig.Add(RC);

                            UserUploadReport uur = new UserUploadReport();
                            uur.ID = Guid.NewGuid().ToString();
                            uur.UserAccount = CurrentUser.UserAccount;
                            uur.ReportID = getImportInfo.Reports[0].Id;
                            uur.FolderID = folderID;
                            uur.Validity = "1";
                            uur.Creater = CurrentUser.UserAccount;
                            uur.CreateTime = DateTime.Now;
                            BE.UserUploadReport.Add(uur);

                            FolderReportAssignment fra = new FolderReportAssignment();
                            fra.ID = Guid.NewGuid().ToString();
                            fra.FolderID = folderID;
                            fra.ReportID = getImportInfo.Reports[0].Id;
                            fra.Validity = "1";
                            fra.CreateTime = DateTime.Now;
                            fra.Creater = CurrentUser.UserAccount;
                            fra.Updater = CurrentUser.UserAccount;
                            fra.UpdateTime = DateTime.Now;
                            BE.FolderReportAssignment.Add(fra);
                            //开启自动检测变化
                            BE.Configuration.AutoDetectChangesEnabled = true;
                            int resultInt = BE.SaveChanges();
                            tran.Commit();//提交事务
                            obj = new
                            {
                                code = resultInt,
                                reportID = getImportInfo.Reports[0].Id
                            };
                        }
                        catch (Exception ex)
                        {
                            tran.Rollback(); //事务回滚
                            obj = new
                            {
                                code = 0,
                                reportID = string.Empty
                            };
                            log.Error("上传报表失败!" + ex);
                        }
                    }

更多文章请扫码关注公众号,有问题的小伙伴也可以在公众号上提出。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值