在asp.net mvc中一次编辑多个记录

Shi*_*han 0 c# asp.net asp.net-mvc

我正在尝试使用asp.net mvc 4&开发一个网站EF6,我希望同时更新多个记录.但只有一个数据正在更新和休息仍然是相同的.这是我的代码,

调节器

var resetInfo = db.myInfoes.Where(p => p.id == ClId).FirstOrDefault();
if (resetInfo != null)
{
    resetInfo.id = 0;
    resetInfo.name = "N/A";
    resetInfo.phone = "N/A"
    db.SaveChanges();
    TempData["success"] = "Information Updated Successfully!";
    return RedirectToAction("Index");
}
else
{
    TempData["fail"] = "Error! Information Update Failed!";
    return RedirectToAction("Index");
}
Run Code Online (Sandbox Code Playgroud)

我在这里做错了吗?如何一次更新与所有ID对应的记录?非常需要这个帮助.谢谢.

Rap*_*aus 6

不要使用FirstOrDefault...哪个只检索一条记录.

您可以检查您的查询是否返回任何数据(而不是检查是否FirstOrDefault返回null).

var resetInfos = db.myInfoes.Where(p => p.id == ClId);

if (!resetInfos.Any()) {
   //Message could be "No data to update for this client" it's not really an Update fail
   TempData["fail"] = "Error! Information Update Failed!";

   //get out of here if you have no data
   return RedirectToAction("Index");
}
foreach (var resetInfo in resetInfos) {
   resetInfo.id = 0;//is it possible to have multiple resetInfo with id 0?
   resetInfo.name = "N/A";
   resetInfo.phone = "N/A"
}
TempData["success"] = "Information Updated Successfully!";
db.SaveChanges();
return RedirectToAction("Index");
Run Code Online (Sandbox Code Playgroud)