• EF 批量 添加 修改 删除


    1批量添加    db.T_Investigator.AddRange(list)

    2批量删除    db.T_Investigator.RemoveRange(list)

    3批量修改   for 循环修改。

     注意: 先查询出来,最后savechange(),写在一个事务中,一次请求一个上下文。

            public int SubmitAll(int[] idList, int userId)
            {
                int num = 0;
                using (var pmdb = new ProjectManagementEntities())
                {
                    using (var tran = pmdb.Database.BeginTransaction())
                    {
                        try
                        {
                            var list = pmdb.T_Investigator.Where(d => idList.Contains(d.InvestigatorID) && d.CreateUserID == userId && d.HasSubmitted == false).ToList();
                            if (list.Count > 0)
                            {
                                foreach (var item in list)
                                {
                                    item.HasSubmitted = true;
                                }
                                num = pmdb.SaveChanges();
                                tran.Commit();
                            }
                        }
                        catch (Exception ex)
                        {
                            tran.Rollback();//回滚
                            throw ex;
                        }
                    }
                }
    
                return num;
            }
    

      

    网上案例:

    EF中的那些批量操作

    http://www.cnblogs.com/mcgrady/archive/2015/03/21/4355282.html

  • 相关阅读:
    三、oneinstack
    二、两条Linux删除数据跑路命令
    一、定时任务
    三、Docker网络
    C#数据结构
    四、字段大全
    【2019-06-14】同事的低迷
    【2019-06-13】同事的进步
    【2019-06-12】看书的好地方
    【2019-06-11】笔耕不辍
  • 原文地址:https://www.cnblogs.com/hao-1234-1234/p/10309096.html
Copyright © 2020-2023  润新知