Asp.net MVC2中你必须知道的扩展点(二):Model Binder2011-08-15 博客园 麒麟Model Binder在Asp.net MVC中非常简单。简单的说就是你控制器中的Action方法需要参数数据;而这 些参数数据包含在HTTP请求中,包括表单上的Value和URL中的参数等。而ModelBinder的功能就是将这些个表单上的Value和URL中的参 数换成对象,然后将这些对象绑定到Action的参数上面。我简单的画了一个图,看起来会更加直观。

在asp.net mvc中你可以写类似下面这样的代码:
[HttpPost]
public ActionResult Create()
{
     Book book = new Book();
     book.Title = Request.Form["Title"];
     // ...
     return View();
}但是这样的写法是非常不可取的,因为代码不容易阅读,也不易测试。再看下面的写法:
[HttpPost]
public ActionResult Create(FormCollection values)
{
     Book book = new Book();
     book.Title = values["Sex"];
     // ...
     return View();
}