Join the social network of Tech Nerds, increase skill rank, get work, manage projects...
 
Node is saved as draft in My Content >> Draft
  • Get and Post in MVC

    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 322
    Comment on it

    While writing methods in controllers you need to know which method is of Get type and which is of Post type

    In my example i have write code for simple user registeration so there are two views for it one Get and one Post

     public class RegisterController:Controller
        {
            EmployeeRepository EmpRepObj = null;
            public ActionResult Home()
            {
                return View();
            }
        
            [HttpGet]
            public ActionResult RegisterEmployee()
            {
                return View();
            }
    
            [HttpPost]
            public ActionResult RegisterEmployeeDetails(EmployeeModel EmpModel)
            {
                try
                {
                    EmpRepObj = new EmployeeRepository();
    
                    EmpRepObj.SaveDetails(EmpModel);
                }
                catch (Exception ex)
                {
    
                }
                return View(EmpModel);
            }
        }

    First is of Get type because it is used to input values from user

    Second is of Post type because it is used to submit details into the database

     

    First view looks like this:

    model MVC_Demo.Models.EmployeeModel
    
    @{
        ViewBag.Title = "RegisterEmployee";
    }
    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
    <h2>RegisterEmployee</h2>
    
    @using (Html.BeginForm("RegisterEmployeeDetails", "Register", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" })) 
    {
        @Html.AntiForgeryToken()
        
        <div class="form-horizontal">
            <h4>EmployeeModel</h4>
            <hr />
            @Html.ValidationSummary(true, "", new { @class = "text-danger" })
            <div class="form-group">
                @Html.LabelFor(model => model.FirstName, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.FirstName, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.FirstName, "", new { @class = "text-danger" })
                </div>
            </div>
    
            <div class="form-group">
                @Html.LabelFor(model => model.MiddleName, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.MiddleName, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.MiddleName, "", new { @class = "text-danger" })
                </div>
            </div>
    
            <div class="form-group">
                @Html.LabelFor(model => model.LastName, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.LastName, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.LastName, "", new { @class = "text-danger" })
                </div>
            </div>
    
            <div class="form-group">
                @Html.LabelFor(model => model.PhoneNo, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.PhoneNo, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.PhoneNo, "", new { @class = "text-danger" })
                </div>
            </div>
    
            <div class="form-group">
                @Html.LabelFor(model => model.Address, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.Address, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.Address, "", new { @class = "text-danger" })
                </div>
            </div>
    
      
    
            <div class="form-group">
                <div class="col-md-offset-2 col-md-10">
                    <input type="submit" value="Create" class="btn btn-default" />
                </div>
            </div>
        </div>
    }
    
    <div>
        @Html.ActionLink("Back to List", "Index")
    </div>
    

     

    Second view looks like this:

    @model MVC_Demo.Models.EmployeeModel
    
    @{
        ViewBag.Title = "RegisterEmployeeDetails";
    }
    
    <h2>RegisterEmployeeDetails</h2>
    
    <div>
        <h4>EmployeeModel</h4>
        <hr />
        <dl class="dl-horizontal">
            <dt>
                @Html.DisplayNameFor(model => model.FirstName)
            </dt>
    
            <dd>
                @Html.DisplayFor(model => model.FirstName)
            </dd>
    
            <dt>
                @Html.DisplayNameFor(model => model.MiddleName)
            </dt>
    
            <dd>
                @Html.DisplayFor(model => model.MiddleName)
            </dd>
    
            <dt>
                @Html.DisplayNameFor(model => model.LastName)
            </dt>
    
            <dd>
                @Html.DisplayFor(model => model.LastName)
            </dd>
    
            <dt>
                @Html.DisplayNameFor(model => model.PhoneNo)
            </dt>
    
            <dd>
                @Html.DisplayFor(model => model.PhoneNo)
            </dd>
    
            <dt>
                @Html.DisplayNameFor(model => model.Address)
            </dt>
    
            <dd>
                @Html.DisplayFor(model => model.Address)
            </dd>
    
          
        </dl>
    </div>
    <p>
        @Html.ActionLink("Edit", "Edit", new { /* id = Model.PrimaryKey */ }) |
        @Html.ActionLink("Back to List", "Index")
    </p>
    

     

    .net

 0 Comment(s)

Sign In
                           OR                           
                           OR                           
Register

Sign up using

                           OR                           
Forgot Password
Fill out the form below and instructions to reset your password will be emailed to you:
Reset Password
Fill out the form below and reset your password: