Introduction
In this post, How to implement Basic CRUD Functionality with the Entity Framework and ASP.NET MVC application.Part 3 : Perform delete functionality of CRUD Operation.
I have split the entire application split into following 3 parts for making things more simple and understandable especially for beginners.
- Part 1 : Perform read functionality of CRUD Operation.
- Part 2 : Perform create and update functionality of CRUD Operation.
- Part 3 : Perform delete functionality of CRUD Operation.
Step-1: Add an action into your controller for get view for Delete contact.
Here I have used "Delete" Action. Please write this following code
- [HttpGet]
- public ActionResult Delete(int id)
- {
- var c = GetContact(id);
- if (c == null)
- {
- return HttpNotFound();
- }
- return View(c);
- }
Step-2: Add view for the Action & design.
Right Click on Action Method (here right click on the action) > Add View... > Enter View Name > Select View Engine (Razor) > Check "Create a strong-typed view" > Scaffold template (Delete) > Select your model class > Add.[N:B:Please Rebuild solution before add view.]
- @model MVCCRUD.Contact
- @{
- ViewBag.Title = "Delete";
- }
- <h2>Delete</h2>
- <h3>Are you sure you want to delete this?</h3>
- <fieldset>
- <legend>Contact</legend>
- <div class="display-label">
- @Html.DisplayNameFor(model => model.ContactPerson)
- </div>
- <div class="display-field">
- @Html.DisplayFor(model => model.ContactPerson)
- </div>
- <div class="display-label">
- @Html.DisplayNameFor(model => model.ContactNo)
- </div>
- <div class="display-field">
- @Html.DisplayFor(model => model.ContactNo)
- </div>
- <div class="display-label">
- @Html.DisplayNameFor(model => model.CountryID)
- </div>
- <div class="display-field">
- @Html.DisplayFor(model => model.CountryName)
- </div>
- <div class="display-label">
- @Html.DisplayNameFor(model => model.StateID)
- </div>
- <div class="display-field">
- @Html.DisplayFor(model => model.StateName)
- </div>
- </fieldset>
- @using (Html.BeginForm()) {
- <p>
- @Html.AntiForgeryToken()
- <input type="submit" value="Delete" /> |
- @Html.ActionLink("Back to List", "Index")
- </p>
- }
Step-3: Add an another action for POST method for Delete contact to the database.
Please write this following code
- [HttpPost]
- [ValidateAntiForgeryToken]
- [ActionName("Delete")]
- public ActionResult DeleteContact(int id)
- {
- using (MyDatabaseEntities dc = new MyDatabaseEntities())
- {
- var v = dc.Contacts.Where(a => a.ContactID.Equals(id)).FirstOrDefault();
- if (v != null)
- {
- dc.Contacts.Remove(v);
- dc.SaveChanges();
- return RedirectToAction("Index");
- }
- else
- {
- return HttpNotFound();
- }
- }
- }
Step-4: Run Application.
- Part 1 - How to Basic CRUD operations using Jquery ajax and modal popup in ASP.NET MVC4.
- Part 1 - How to implement Basic CRUD Functionality with the Entity Framework and ASP.NET Webforms application