tengo una variable¿Cómo leer los parámetros de cadena de consulta de una URL sin procesar de ASP.NET?
string rawURL = HttpContext.Current.Request.RawUrl;
¿Cómo se leen los parámetros de cadena de consulta para esta url?
tengo una variable¿Cómo leer los parámetros de cadena de consulta de una URL sin procesar de ASP.NET?
string rawURL = HttpContext.Current.Request.RawUrl;
¿Cómo se leen los parámetros de cadena de consulta para esta url?
Esto es probablemente lo que está buscando
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");
realmente? ¿Es eso realmente necesario? – james31rock
esto es exactamente lo que quería. – GilliVilla
@ james31rock yes..realmente :) La pregunta no era tan obvia que algunos genios la han rechazado ... Rawurl debe manejarse de esta manera. Lo que otros han mencionado es la querystring predeterminada. – GilliVilla
No es necesario pasar por el RawUrl
- el objeto Request
ya contiene una versión analizada, utilizando la propiedad Request.QueryString
.
Esto es un índice NameValueCollection
.
Específicamente pregunta cómo hacer esto en RawUrl. La cadena de consulta RawUrl y Request.QueryString no están relacionadas en algunas situaciones, como si está haciendo una reescritura de URL. El hecho de que esté usando RawUrl es una fuerte pista de que está usando la reescritura de URL. – NickG
En el pasado también he usado 'Request.Params' (sugerido por @Piotr), lo que está bien en algunos casos. En otros casos, cambié a 'Request.QueryString' como lo sugirió @Oded. 'Request.QueryString' no activa la validación de parámetros, lo que puede evitar, por ejemplo, cuando acepta HTML como entrada. – Manfred
Hay una propiedad de Params en el objeto Request que le permitirá hacerlo fácilmente. No tiene que analizarlo usted mismo.
Prueba esto:
string rawURL = HttpContext.Current.Request.ServerVariables["query_string"];
Esto va a resolver su problema .....
string strReq = "";
strReq = HttpContext.Current.Request.RawUrl;
strReq = strReq.Substring(strReq.IndexOf('?') + 1);
duplicado posible: http://stackoverflow.com/questions/1206548/most-optimal-way-to-parse-querystring-within-a-string- in-c-sharp – LittleBobbyTables