asp.net-mvc-4 - 如何在 MVC 4 的请求中获取查询字符串变量?

标签 asp.net-mvc-4 asp.net-web-api httprequest

我在这里为我的第一个使用 Web Api 品种的 MVC 4 项目工作而大笑。

在 MVC 3 中,我可以获得如下查询字符串参数:

var unicornName = Request.Query["unicornName"];

但在 MVC 4 中,看起来请求来自 HttpRequestBaseHttpRequestMessage并且 Query 参数不再存在。所以,嗯,好吧,我现在如何得到它们。我在网上找到了几个例子,但它们很荒谬。

This fellow recommends用“&”分割 RequestUri 的查询字符串并找到你的参数和对。 And this example显示调用 GetQueryNameValuePairs新请求对象上的方法返回键值对列表,然后执行一些 linq 来查找您的键和值。要得到如此简单的东西,真的不可能如此倒退。请告诉我我错过了什么!

备注 :我可以理解它正在采用模型绑定(bind)的方式,我应该通过操作的方法参数引入查询字符串参数,但是仍然有一些时候需要从请求中提取查询字符串变量(很容易?),例如一个过滤器。

最佳答案

我想这可能是你正在寻找的,

  var queryValues = Request.RequestUri.ParseQueryString();

https://stackoverflow.com/a/11729619/6819

关于asp.net-mvc-4 - 如何在 MVC 4 的请求中获取查询字符串变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12944358/

相关文章:

javascript - JS : GET request with added "data" parameter like cURL -d '{key: value, key2: value}'

string - 如何在 MVC4 中显示字符串 "All"而不是数字?

c# - 如何在 IIS 上运行自托管(基于owin)Web api?

asp.net-mvc - razor - 获取部分列表

asp.net-web-api - 如何为MVC4/VS2012/Web API注入(inject) Controller

asp.net - Web API 授权属性不适用于操作

django - HttpRequest 对象没有属性 'session'

带有 body 属性的 node.js https POST - 如何?

asp.net-mvc - 将过滤结果导出到 MVC 4 中的 Excel(无 Web 表单)

c# - 查询给出错误 : String was not recognized as a valid Boolean