什么是 ASP.NET MVC 中的模型绑定,为什么需要它?有人可以举个简单的例子,可以通过检查创建强类型视图来实现模型绑定吗?
问问题
20699 次
1 回答
20
ModelBinding
是 ASP.NET MVC 用于从输入流(通常是 HTTP 请求)创建强类型对象(或填充原始类型参数)的机制。
例如,考虑这个Person
模型:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
现在,您有一些Action
期望Controller
将Person
类型作为参数:
public class HomeController : Controller
{
public ActionResult EditPersonDetails(Person person)
{
// ...
}
}
然后Model-Binder
负责person
为您填写该参数。默认情况下,它通过查询ValueProviders
集合并询问(待绑定)模型中每个属性的值来实现。
有关价值提供者和模型绑定器的更多信息,请访问http://haacked.com/archive/2011/06/30/whatrsquos-the-difference-between-a-value-provider-and-model-binder.aspx/
于 2013-07-18T11:29:13.677 回答