Skip to main content
 首页 » 编程设计

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

2024年01月13日43hnrainll

我正在重写一个简单的 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”:

Error 11 'System.Web.HttpRequestBase' does not contain a definition for 'RequestUri' and no extension method 'RequestUri' accepting a first argument of type 'System.Web.HttpRequestBase' could be found (are you missing a using directive or an assembly reference?)

我去了微软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