HttpGet的查询字符串在多会话MVC4应用程序中消失了

时间:2013-12-11 10:57:55

标签: c# asp.net-mvc asp.net-mvc-4

我有一个Web应用程序,应该扩展以满足新的要求。一个要求是处理一个GET参数。

该应用程序是金融领域的在线计算器。因此,代表们希望同时计算多个场景。因此,我从http://blog.gauffin.org/2012/02/get-a-unique-session-in-each-browser-tab/#.UkVi4YZcVKU实施了GuidRoute。覆盖GetRouteData方法只是将GUID添加到路由值中。

致电网址:www.example.com/calc 通过GetRouteData后的网址:www.example.com/calc/{yourguid} 网址格式:“{controller} / {action} / {id}”

现在我想收到一个新的HttpGet查询字符串参数。大多数人都说:Mvc框架简单地按名称映射params。

但我没有申请。我将方法signatur扩展为public Action DoSomething(string newGetParameter)并使用www.example.com/calc?newGetParameter=foo

调用该网站

但newGetParameter始终为null。经过一些研究和一点点尝试和错误后,我将路线模式更改为"{controller}/{action}/{id}/{newGetParameter}"。但是RouteData.Values["newGetParameter"]是空的。

希望有人可以帮助我 基督教

1 个答案:

答案 0 :(得分:0)

好的,经过一些细节阅读后,我认出了其他讨论的网址。我的错误是调用www.example.com/calc?newGetParameter=foo。相反,我必须在?newGetParameter = foo之前使用斜杠调用,如此=> www.example.com/calc/?newGetParameter=foo