If you are using Url rewriting in your app then I strongly suggest to take a look at Url Routing which is available for ASP.NET MVC as well as ASP.NET Webforms (.NET 3.5 SP1).
If you cannot change the way your app is working with urls the let’s consider the following scenario:
You have a url: /product.aspx?id=1 and you want to rewrite it to the following : /product-ProductName_1.aspx
If for any reason want to get the second url inside product.aspx, using the Request.Url property will not work. This will return the first url.
You must use Request.RawUrl which will return the modified url.
PS A great Url Rewriter is this http://urlrewriter.net/