我如何在.NET中使用Request.RequestUri.Query?(错误11'System.Web.HttpRequestBase'不包含'RequestUri'的定义)

L. *_*nna 1 .net c# api get asp.net-mvc-2

我正在重写一个简单的API GET函数.我想让它更灵活,所以我试着复制这个问题中给出的例子.

我的代码:

  public IEnumerable<Distributeur> GetDistributeurs()
{
    NameValueCollection nvc = HttpUtility.ParseQueryString(Request.RequestUri.Query);
    var departementCode = nvc["departementCode"];
    // BL comes here



    var repository = new LeadRepository();
    return repository.getDistributeurs(departementCode);
}
Run Code Online (Sandbox Code Playgroud)

不幸的是我收到错误'无法解决RequestUri'和构建:

错误11'System.Web.HttpRequestBase'不包含'RequestUri'的定义,并且没有可以找到接受类型'System.Web.HttpRequestBase'的第一个参数的扩展方法'RequestUri'(你是否缺少using指令或者装配参考?)

我去了微软文档,但它们几乎是空的.

Ant*_*t P 7

Request对象的实例HttpRequest-不是HttpWebRequest.没有财产HttpRequest.RequestUri.您要找的房产是Request.Url.Query:

HttpUtility.ParseQueryString(Request.Url.Query);
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/en-us/library/system.web.httprequest.url.aspx