在此示例中,UpdateModel方法如何使用formValues填充person实例? 我认为UpdateModel在使用formValues填充person时使用反射,但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 });
}
答案 0 :(得分:0)
我不认为它确实如此,从当前上下文中获取表单集合要容易得多。
如果UpdateModel方法将参数发送到调用它的方法,则必须获取堆栈转储并挖掘以查找参数。此外,这不是获取数据的明显方式。
答案 1 :(得分: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