我正在重写一个简单的API GET函数。我想使其更加灵活,因此我尝试复制此question中给出的示例。

我的代码:

  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);
}


不幸的是,我在构建时遇到错误“无法解析RequestUri”:


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


我去了Microsoft docs,但是它们几乎是空的。

最佳答案

Request对象是HttpRequest的实例-不是HttpWebRequest。没有属性HttpRequest.RequestUri。您要查找的属性是Request.Url.Query

HttpUtility.ParseQueryString(Request.Url.Query);


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

关于c# - 如何在.NET中使用Request.RequestUri.Query? (错误11'System.Web.HttpRequestBase'不包含'RequestUri'的定义。),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16918488/

10-10 20:04