1

在此示例中,UpdateModel 方法如何使用 formValues 填充人员实例?我认为 UpdateModel 在通过 formValues 填充人员时使用反射,但是 updatemodel 如何捕获 formValues 参数?

[HttpPost]
public ActionResult Edit(int ID,FormCollection formValues)
{
     Person person= db.PersonSet.Single(p => p.PersonID == ID);
     UpdateModel(person);
     db.SaveChanges();
     return RedirectToAction("Details", new { ID = person.PersonID });

}
4

2 回答 2

0

我认为不会,从当前上下文中获取表单集合要容易得多。

如果 UpdateModel 方法将获取发送给调用它的方法的参数,则它必须获取堆栈转储并四处挖掘以找到参数。此外,这不是获取数据的明显方式。

于 2010-07-03T20:42:45.620 回答
0

我认为它使用这样的东西:

var fc = new FormCollection(Controller.Request.Form);

http://msdn.microsoft.com/en-us/library/system.web.httprequestbase.form.aspx

http://msdn.microsoft.com/en-us/library/system.web.mvc.controller_members.aspx

http://msdn.microsoft.com/en-us/library/dd492288.aspx

于 2010-07-03T20:45:51.383 回答