ASP.Net MVC多记录保存
ASP.Net MVC multi record save
我正在编写一个 mvc5 应用程序,其中有一个名为 Survey 的模型。
public class Survey
{
public int SurveyId { get; set; }
[Required]
public string Description { get; set; }
[Required]
public string Classification { get; set; }
[Required]
public int Score1{ get; set; }
[Required]
public int Score2{ get; set; }
public string Notes { get; set; }
}
我正在将调查记录的集合传递到一个视图,在该视图中我将它们显示在列表中。我希望能够让用户回答每个调查 record/question 并在表单底部有一个保存按钮,以便将一个 POST 操作返回给控制器。
我从未尝试将对象集合传回 POST 控制器,所以我很好奇这是否是一个好方法?任何建议表示赞赏!
提前致谢!
我建议不要将集合传递给视图,而是传递一个新的 ViewModel 'SurveySet',其唯一字段可能是 IList(Survey)。然后在 Controller 中调用 surveySet 上的 db.SaveChanges() 时,应保存对其每个调查的所有更改。
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult CreateComment(SurveySet surveySet)
{
db.Entry(surveySet).State = EntityState.Modified;
db.SaveChanges();
}
我正在编写一个 mvc5 应用程序,其中有一个名为 Survey 的模型。
public class Survey
{
public int SurveyId { get; set; }
[Required]
public string Description { get; set; }
[Required]
public string Classification { get; set; }
[Required]
public int Score1{ get; set; }
[Required]
public int Score2{ get; set; }
public string Notes { get; set; }
}
我正在将调查记录的集合传递到一个视图,在该视图中我将它们显示在列表中。我希望能够让用户回答每个调查 record/question 并在表单底部有一个保存按钮,以便将一个 POST 操作返回给控制器。
我从未尝试将对象集合传回 POST 控制器,所以我很好奇这是否是一个好方法?任何建议表示赞赏!
提前致谢!
我建议不要将集合传递给视图,而是传递一个新的 ViewModel 'SurveySet',其唯一字段可能是 IList(Survey)。然后在 Controller 中调用 surveySet 上的 db.SaveChanges() 时,应保存对其每个调查的所有更改。
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult CreateComment(SurveySet surveySet)
{
db.Entry(surveySet).State = EntityState.Modified;
db.SaveChanges();
}