Me gustaría obtener la URL exacta que el usuario ingresó en el navegador. Por supuesto que siempre podría utilizar algo como Request.Url.ToString()
pero esto no me da lo que quiero en la siguiente situación:Obtenga la URL exacta que el usuario ingresó en el navegador
http://www.mysite.com/rss
Con la url por encima de lo Request.Url.ToString()
me daría es:
http://www.mysite.com/rss/Default.aspx
¿Alguien sabe cómo lograr esto?
Ya he probado:
Request.Url
Request.RawUrl
this.Request.ServerVariables["CACHE_URL"]
this.Request.ServerVariables["HTTP_URL"]
((HttpWorkerRequest)((IServiceProvider)HttpContext.Current).GetService(typeof(HttpWorkerRequest))).GetServerVariable("CACHE_URL")
((HttpWorkerRequest)((IServiceProvider)HttpContext.Current).GetService(typeof(HttpWorkerRequest))).GetServerVariable("HTTP_URL")
Si Si mira el código fuente de Cassini, verá que la URL solicitada por el usuario se sobrescribe (en ciertos casos) antes de que se llame a HttpRuntime.ProcessRequest. Eso prácticamente descarta cualquier forma HttpWorkerRequest-agnostic de hacer esto. –