EF并发问题,在提供程序连接上启动事务时出错。有关详细信息,请参阅内部异常。
1
Entities data=new Entities(); var list = from p in data.Record where p.CreateTime >= d && p.CreateTime < DateTime.Today select new { ID = p.ID, Name = p.Name, UserID=p.UserID }; foreach (var item in list) { var record = data.Record.FirstOrDefault(a => a.ID == item.ID); if (record != null) { record.RankTime = record.CreateTime.AddDays(3); data.SaveChanges(); BusinessModel.KeywordRank mod = new KeywordRank(); mod.RecordID = item.ID; mod.UserID = item.UserID; mod.Name = item.Name; mod.Rank = 0; mod.CreateTime = DateTime.Now; data.KeywordRank.Add(mod); data.SaveChanges(); //此处抛异常 在提供程序连接上启动事务时出错。有关详细信息,请参阅内部异常。 } }
第10行大括号后加 .ToList() 就好了。
遍历 中 data.SaveChanges(); 一定要 tolist