在ASP.NET MVC中,如何在动作中接收参数字典?

时间:2009-05-12 18:02:16

标签: asp.net-mvc asp.net-mvc-routing

我的控制器中的大多数操作都有静态定义的参数列表,因此它们与标准教程示例很好地对应:

public ActionResult SomeAction(string id, string arg1, string arg2)
{
    // use arg1, arg2...
}

但是我有一个麻烦的情况,即视图动态地组合一个表单,因此参数集是完全动态的。我很满意字符串名称到字符串值的映射。

我试过这个:

public ActionResult TroublesomeAction(string id, IDictionary<string, string> args)
{
    // loop through args...
}

但是args传递了null。如何抓住我们在错误消息中听到的着名“参数字典”这一天最简单的方法是什么?

如果没有一种简单的方法,我将如何做到这一点?

1 个答案:

答案 0 :(得分:1)

从控制器,我们可以访问:

Request.Form

其中包含我需要的内容,因此无需映射到操作的参数。