Support us .Net Basics C# SQL ASP.NET Aarvi MVC Slides C# Programs Subscribe Download

Part 144 - How to check if the request method is a GET or a POST in MVC

Suggested Videos
Part 141 - Contact us page using asp.net and c#
Part 142 - Contact us page using asp.net and c# continued
Part 143 - Difference between http get and http post methods



In asp.net webforms, IsPostBack page property is used to check if the request is a GET or a POST request. If IsPostBack property returns true, then the request is POST, else the request is GET.

In asp.net mvc, use Request object's HttpMethod property to check if the request is a GET or a POST request. Let's discuss using Request.HttpMethod with an example.



1. Create a new asp.net mvc application and name MVCDemo.
2. Add HomeController using "Empty MVC controller" scaffolding template
3. Copy and paste the following code
public class HomeController : Controller
{
    // Action method that responds to the GET request
    [HttpGet]
    public ActionResult Index()
    {
        ViewBag.IsPostBack = IsPostBack();
        return View();
    }

    // Action method that responds to the POST request
    [HttpPost]
    [ActionName("Index")]
    public ActionResult Index_Post()
    {
        ViewBag.IsPostBack = IsPostBack();
        return View();
    }

    // This method checks if a request is a GET or a POST request
    private bool IsPostBack()
    {
        return Request.HttpMethod == "POST";
    }
}

4. Right click on the Index() action method in HomeController and select "Add View" from the context menu. Set
View name = Index
View engine = Razor
Create a strongly typed view = unchecked
Create a partial view = unchecked
Use a layout or master page = unchecked
Click Add.

5. Copy and paste the following code in Index.cshtml view.
<h3 style="font-family:Arial">
    IsPosback = @ViewBag.IsPostback
</h3>

@using (@Html.BeginForm())
{
    <input type="submit" value="Submit" />
}

Build the project and navigate to http://localhost/MVCDemo/Home/Index. Notice that when you first visit the Page, a GET request is issued and hence IsPostBack = False. Now click Submit button and notice that IsPostBack = True is displayed, as a POST request is issued upon clicking the Submit button.

1 comment:

  1. The error stating that IspostBack is does not exists in the current context

    ReplyDelete

It would be great if you can help share these free resources