强类型更新和创建控制器操作

时间:2010-07-11 08:52:01

标签: asp.net asp.net-mvc

我有一些示例代码,其中控制器中Create action menthod的签名如下所示:

    [HttpPost]
    public ActionResult Create(JobCardViewData viewData)

我刚刚创建了一个新的MVC应用程序,相同的签名如下所示:

    [HttpPost]
    public ActionResult Create(FormCollection collection)

我更愿意知道如何实现我的操作方法,如顶部示例,或者至少如何从FormCollection转换为业务对象,而不会像使用Reflection那样低级。

1 个答案:

答案 0 :(得分:2)

我个人避免使用FormCollection,因为它是magic strings的集合。我建议你总是使用这个签名:

[HttpPost]
public ActionResult Create(JobCardViewData viewData)

并让模型绑定器完成将请求参数解析为强类型对象的工作(您不需要求助于反射或做任何事情)。