2010-10-14 24 views
9

¿Existe una forma rápida de obtener el esquema, el host, el puerto (solo si no es 80) y la ruta de la aplicación en ASP.NET?En ASP.NET, ¿cuál es la forma más rápida de obtener la URL base para una solicitud?

Por lo que yo sé, tengo que montar las siguientes piezas:

  • Request.Url.Scheme
  • Request.Url.SchemeDelimiter
  • Request.Url.Authority (aunque eso probablemente siempre incluir el puerto, incluso cuando hay 80)
  • Request.ApplicationPath

no es una propiedad sencilla para eso?

Respuesta

15

Esto debería funcionar:

Request.Url.GetLeftPart(UriPartial.Authority) + Request.ApplicationPath 

Tenga en cuenta que esto puede o no puede terminar con una "/", dependiendo de si su aplicación se encuentra alojado en la raíz del sitio o en un subdirectorio.

Cuestiones relacionadas