我在这里为我的第一个使用 Web Api 品种的 MVC 4 项目工作而大笑。
在 MVC 3 中,我可以获得如下查询字符串参数:
var unicornName = Request.Query["unicornName"];
但在 MVC 4 中,看起来 Request 从 aHttpRequestBase
变为 aHttpRequestMessage
并且 Query 参数不再存在。所以,嗯,好吧,我现在如何得到它们。我在网上找到了几个例子,但它们很荒谬。
这个家伙建议用“&”分割 RequestUri 的查询字符串并找到你的参数和配对。这个例子展示了在新的请求对象上调用一个GetQueryNameValuePairs
方法,它返回一个键值对列表,然后做一些 linq 来找到你的键和值。要得到如此简单的东西,真的不可能如此倒退。请告诉我我错过了什么!
注意:我可以理解它正在采用模型绑定的方式,我应该通过操作的方法参数引入查询字符串参数,但是仍然有一些时候需要从请求中提取查询字符串变量(很容易?),例如在过滤器中。