如何读取ASP.NET原始URL的查询字符串参数?

Gil*_*lla 18 c# asp.net parameters url query-string

我有一个变量

string rawURL = HttpContext.Current.Request.RawUrl;
Run Code Online (Sandbox Code Playgroud)

如何读取此URL的查询字符串参数?

Sha*_*10N 30

这可能就是你所追求的

  Uri theRealURL = new Uri(HttpContext.Current.Request.Url.Scheme + "://" +   HttpContext.Current.Request.Url.Authority + HttpContext.Current.Request.RawUrl);

   string yourValue= HttpUtility.ParseQueryString(theRealURL.Query).Get("yourParm"); 
Run Code Online (Sandbox Code Playgroud)

  • 真的吗?这一切真的有必要吗? (3认同)
  • @ james31rock在我的情况下,因为URL重写.如果您使用URL重写,浏览器和RawUrl中的可见URL可能会有很大差异. (3认同)
  • @james31rock yes..really :)问题并不是那么显而易见,有些天才对它进行了贬低...... rawurl需要以这种方式处理.其他人提到的是默认的查询字符串. (2认同)

Ode*_*ded 9

无需经历RawUrl- Request对象已经包含已解析的版本,使用该Request.QueryString属性.

这是一个索引NameValueCollection.

  • 他特别询问如何在RawUrl上执行此操作.RawUrl查询字符串和Request.QueryString在某些情况下不相关,例如,如果您正在进行URL重写.他正在使用RawUrl这一事实强烈暗示他正在使用URL重写. (3认同)