Asp.net mvc 在ASP.NET MVC中,如何在操作中接收参数字典?

Asp.net mvc 在ASP.NET MVC中,如何在操作中接收参数字典?,asp.net-mvc,asp.net-mvc-routing,Asp.net Mvc,Asp.net Mvc Routing,我的控制器中的大多数操作都有静态定义的参数列表,因此它们与标准教程示例非常吻合: public ActionResult SomeAction(string id, string arg1, string arg2) { // use arg1, arg2... } 但是我有一个麻烦的例子,视图动态地组合一个表单,所以参数集是完全动态的。我很乐意将字符串名称映射到字符串值 我试过这个: public ActionResult TroublesomeAction(string id, I

我的控制器中的大多数操作都有静态定义的参数列表,因此它们与标准教程示例非常吻合:

public ActionResult SomeAction(string id, string arg1, string arg2)
{
    // use arg1, arg2...
}
但是我有一个麻烦的例子,视图动态地组合一个表单,所以参数集是完全动态的。我很乐意将字符串名称映射到字符串值

我试过这个:

public ActionResult TroublesomeAction(string id, IDictionary<string, string> args)
{
    // loop through args...
}
public ActionResult疑难解答操作(字符串id、IDictionary参数)
{
//通过参数循环。。。
}
但是
args
被传递一个
null
。在一个动作中,最简单的方法是什么来获取我们最近在错误消息中经常听到的著名的“参数字典”


如果没有一个简单的方法,我该怎么做呢?

通过控制器,我们可以访问以下内容:

Request.Form

它正好包含了我需要的内容,因此无需映射到操作的参数。

您是指请求表单的字典吗?在本例中,我指的是,尽管它可能是客户端执行GET或POST的任何内容。很高兴您在我之前的评论中找到了奶酪。:)我没有!我在问题中使用了“形式”和“字典”这两个词,所以如果你在暗示我,我完全没有注意到。我需要知道的是“基类有一群成员…”