Get full query string in C# ASP.NET

As a PHP programmer I'm used to using $_GET to retrieve the HTTP query string... and if I need the whole string, theres loads of ways to do it.

In ASP however, I can't seem to get the query.

Here is the code for news.aspx (embedded in some HTML):

<%                             
    string URL = "http://www.example.com/rendernews.php?"+Request.Querystring;
    System.Net.WebClient wc = new System.Net.WebClient();
    string data = wc.DownloadString(URL);
    Response.Output.Write(data);
%>

I am fetching a PHP script's output from a remote server, and this works perfectly without the Request.Querystring.

The issue is that I'm trying to get the full query string on the first line: Request.Querystring. I am getting an error "Object reference not set to an instance of an object" which basically means that Request.Querystring doesn't exist.

Any idea what the problem is here? How can I get that query string so when index.aspx is called like http://test.com/news.aspx?id=2 my script fetches http://www.example.com/rendernews.php?id=2


Try Request.Url.Query if you want the raw querystring as a string.


This should work fine for you.

Write this code in the Page_Load event of the page.

string ID = Request.QueryString["id"].ToString();
Response.Redirect("http://www.example.com/rendernews.php?id=" + ID);