Friday, February 4, 2011

How do I get the full url of the page I am on in C#

I need to be able to get at the full URL of the page I am on from a user control. Is it just a matter of concatenating a bunch of Request variables together? If so which ones? Or is there a more simpiler way?

  • Request.RawUrl

    From FlySwat
  • if you need the full URL as everything from the http to the querystring you will need to concatenate the following variables

    Request.ServerVariables("HTTPS") // to check if it's HTTP or HTTPS
    Request.ServerVariables("SERVER_NAME") 
    Request.ServerVariables("SCRIPT_NAME") 
    Request.ServerVariables("QUERY_STRING")
    
  • Thanks guys, I used a combination of both your answers @Christian and @Jonathan for my specific need.

    "http://" + Request.ServerVariables["SERVER_NAME"] +  Request.RawUrl.ToString()
    

    I don't need to worry about secure http, needed the servername variable and the RawUrl handles the path from the domain name and includes the querystring if present.

    harpo : You should also know that RawUrl, unlike Request.Url, represents the original, unmapped request url if url mapping is being used.
    From RedWolves
  • I usually use Request.Url.ToString() to get the full url (including querystring), no concatenation required.

    From travis
  • Request.Url.AbsoluteUri
    

    This property does everything you need, all in one susinct call.

  • Request.Url.AbsoluteUri

    it worked

0 comments:

Post a Comment