title: ASP.NET: Get *real* raw URL
body: <p>In ASP.NET, is there any way to get the <em>real</em> raw URL?</p>
  
  <p>For example, if a user browse to "<a href="http://example.com/mypage.aspx/%2F" rel="noreferrer">http://example.com/mypage.aspx/%2F</a>", I would like to be able to get "<a href="http://example.com/mypage.aspx/%2F" rel="noreferrer">http://example.com/mypage.aspx/%2F</a>" rather than "<a href="http://example.com/mypage.aspx//" rel="noreferrer">http://example.com/mypage.aspx//</a>".</p>
  
  <p>I would of course like a clean way to do it, but I can live with a hacky approach using reflection or accessing obscure properties.</p>
  
  <p>At the moment, I try to use the uri in the Authorization-header (which works), but I cannot rely on that always being there.</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>What I really want to do is to be able to distinguish between "<a href="http://example.com/mypage.aspx/%2F" rel="noreferrer">http://example.com/mypage.aspx/%2F</a>" and "<a href="http://example.com/mypage.aspx/%2F%2F" rel="noreferrer">http://example.com/mypage.aspx/%2F%2F</a>".</p>
  
  <p>It looks like ASP.NET first converts "%2F%2F" into "//" and then converts the slashes into a single slash.</p>
  
  <p>So just re-encoding it is not going to work.</p>