tags:

views:

388

answers:

3

I am using C# with ASP.NET. How do i check if a variable has been received as a POST variable? The requirements is i must do different actions based on POST and GET. What if i have a variable name in both get and post, how do i check them both?

+4  A: 

Use this for GET values:

Request.QueryString["key"]

And this for POST values

Request.Form["key"]

Also, this will work if you don't care whether it comes from GET or POST, or the HttpContext.Items collection:

Request["key"]

Another thing to note (if you need it) is you can check the type of request by using:

Request.RequestType

Which will be the verb used to access the page (usually GET or POST). Request.IsPostBack will usually work to check this, but only if the POST request includes the hidden fields added to the page by the ASP.NET framework.

Dan Herbert
A: 

Use the

Request.Form[]

for POST variables,

Request.QueryString[]

for GET.

egyedg
A: 

In addition to using Request.Form and Request.QueryString and depending on your specific scenario, it may also be useful to check the Page's IsPostBack property.

if (Page.IsPostBack)
{
  // HTTP Post
}
else
{
  // HTTP Get
}
Wim Hollebrandse