这是我的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();
}
最佳答案
您要一遍又一遍地添加同一名学生。而是在循环内创建一个新学生(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();
}
关于c# - dbContext对象无法从循环内工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24638233/