views:

17

answers:

1

Is there a fast way to get the scheme, host, port (only if not 80) and application path in ASP.NET?

As far as I know, I need to assemble the following pieces:

  • Request.Url.Scheme
  • Request.Url.SchemeDelimiter
  • Request.Url.Authority (although that will probably always include the port even when it's 80)
  • Request.ApplicationPath

Isn't there a simple property for that?

+1  A: 

This should work:

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

Note that this may or may not end with a trailing "/" depending on if your app is hosted in the root of the site or in a sub directory.

David