【发布时间】:2019-04-21 04:22:28
【问题描述】:
public ActionResult EditRow()
{
using (SchoolContext db = new SchoolContext())
{
var v = db.Students.ToList();
return View(v);
}
}
[HttpPost]
public ActionResult EditRow(List<Student> student)
{
if (ModelState.IsValid)
{
using (SchoolContext db = new SchoolContext())
{
foreach (var i in student)
{
var c = db.Students.Where(a => a.ID.Equals(i.ID)).FirstOrDefault();
if (c != null)
{
c.LastName = i.LastName;
c.FirstMidName = i.FirstMidName;
c.EnrollmentDate = i.EnrollmentDate;
}
}
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.Message = "Successfully updated";
return View(student);
}
else
{
ViewBag.Message = "failed";
return View(student);
}
现在我已经实现了这段代码,但是服务器需要更多时间来编辑记录。有什么方法可以快速编辑记录吗? 如何最大限度地减少执行时间? 以及如何在 Visual Studio 中检查时间复杂度?
【问题讨论】:
-
您能否制作一个 ID 列表,然后加载该列表中具有 ID 的所有学生,而不是单独加载每个学生?然后遍历该内存列表进行更新
标签: c# asp.net asp.net-mvc entity-framework entity-framework-6