DbContext对象不能在循环中工作
本文关键字:工作 循环 对象 不能 DbContext | 更新日期: 2023-09-27 18:12:04
这是我的ActionMethod
,它不将数据填充到数据库。
private StudentDBContext db = new StudentDBContext();
public ActionResult PopulateData()
{
Student objStu = new Student();
for(int i=0;i<2;i++)
{
objStu.ID = i+1;
objStu.name = "something";
db.Students.Add(objStu);
db.SaveChanges();
}
return View();
}
唯一的时间当我使用它没有循环(如下所示),为什么会这样?
public ActionResult PopulateData()
{
Student objStu = new Student();
//for(int i=0;i<2;i++)
//{
objStu.ID = 1;
objStu.name = "something";
db.Students.Add(objStu);
db.SaveChanges();
//}
return View();
}
你在一次又一次地添加同一个学生。相反,在循环中创建新的student (objStu):
public ActionResult PopulateData()
{
for(int i=0;i<2;i++)
{
Student objStu = new Student();
objStu.ID = i+1;
objStu.name = "something";
db.Students.Add(objStu);
}
db.SaveChanges();
return View();
}