xst*_*ter 26 api asp.net-mvc asp.net-mvc-4 asp.net-web-api
我觉得这有点荒谬,但我找不到一种方法来获取get请求的参数
/api/foo?sort=name.
在ApiController课堂上,我给了一个public string Get().推杆Get(string sort)提出/api/foo了不好的要求.请求实例ApiController是类型System.Net.Http.HttpRequestMessage.它没有QueryString或Parameters属性或任何东西.
Dar*_*ren 30
ApiController设计为在没有HttpContext对象的情况下工作(使其可移植,并允许它在IIS之外托管).
您仍然可以访问查询字符串参数,但它通过以下属性完成:
Request.GetQueryNameValuePairs()
Run Code Online (Sandbox Code Playgroud)
这是一个循环遍历所有值的示例:
foreach (var parameter in Request.GetQueryNameValuePairs())
{
var key = parameter.Key;
var value = parameter.Value;
}
Run Code Online (Sandbox Code Playgroud)
Jos*_*uch 19
你可以使用
HttpContext.Current.Request.QueryString
Run Code Online (Sandbox Code Playgroud)
这是一个从请求中获取查询字符串q并使用它来查询帐户的示例:
var q = Request.GetQueryNameValuePairs().Where(nv => nv.Key =="q").Select(nv => nv.Value).FirstOrDefault();
if (q != null && q != string.Empty)
{
var result = accounts.Where(a=>a.Name.ToLower().StartsWith(q.ToLower()));
return result;
}
else
{
throw new Exception("Please specify a search query");
}
Run Code Online (Sandbox Code Playgroud)
这可以像这样调用:
URL/API /帐户] Q = P
| 归档时间: |
|
| 查看次数: |
34360 次 |
| 最近记录: |