linq数据删除与更新问题,不能删除循环体
 //普遍的情况,发现错误,迅速退款
                      
                    
                    var cx_xysj = from aa in kk
                                  where aa.数量 < 0 && aa.删除!="是"
                                  select aa;
                    foreach (var dd in cx_xysj)//找到数量相反的正的记录,自己和本身都删除,对应删除
                    {
                        double? sl = dd.数量 * (-1);
                        var cx_zxsj = from aa in kk
                                      where aa.数量 == sl && aa.删除 != "是"
                                      select aa;
                        if (cx_zxsj.Count() > 0)

                        {

//linq数据删除与更新问题,不能删除循环体。而更新,在实体没有保存前修改后,查询当前实体,而不是再次提交查询的其它实体,对当前实体再次查询变化的条件,有效。

                            // sjklj.病员信息大全.DeleteObject(cx_zxsj.First());//删除数量为负数的对应正数记录:不能删除循环体,否则混乱
                            // sjklj.病员信息大全.DeleteObject(dd);//删除数量为负数的
                            cx_zxsj.First().删除 = "是";
                            dd.删除 = "是";
                        }
                    }
                    
                   }
                   //删除标记为是的记录
                   var cx_scjl = from aa in kk
                              where aa.删除 == "是"
                              select aa;
                   foreach(var ff in cx_scjl)
                   {
                    sjklj.病员信息大全.DeleteObject(ff);
                   }
                }
                sjklj.SaveChanges();
                System.Threading.Thread.Sleep(2000);

渝公网安备 50011902000225号

渝ICP备18008233号-1