我有一个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"]
是空的。
希望有人可以帮助我 基督教
答案 0 :(得分:0)
好的,经过一些细节阅读后,我认出了其他讨论的网址。我的错误是调用www.example.com/calc?newGetParameter=foo。相反,我必须在?newGetParameter = foo之前使用斜杠调用,如此=> www.example.com/calc/?newGetParameter=foo