Salut
Je suis débutante en ASP.net mvc du coup je suis entrain de travailler sur un tutoriel: développement d’une application de gestion de contacts avec ASP.NET MVC (C#).
J'ai trouvé un problème au niveau de l'action "Delete", quand je veux supprimer un enregistrement il m'affiche le message d'erreur suivant: "La référence d'objet n'est pas définie à une instance d'un objet" au niveau de
<%= Model.nom %> <%= Model.prenom %>?.
voici mon code html de la page delete:
Code ASP.Net : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<AppSQLI.Models.Employe>" %> <asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> <title>Delete</title> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2>Delete</h2> <p> Are you sure that you want to delete the entry for <%= Model.nom %> <%= Model.prenom %>? </p> <% using (Html.BeginForm(new { Id = Model.id_emp })) { %> <p> <input type="submit" value="Delete" /> </p> <% } %> <div> <%=Html.ActionLink("Back to List", "Index") %> </div> </asp:Content>
et voici mon code controllers/appcontrolle.cs action Delete:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 public ActionResult Delete(int id) { var contactToDelete = (from c in _entities.employe where c.id_emp == id select c).FirstOrDefault(); return View(contactToDelete); } // // POST: /Home/Delete/5 [AcceptVerbs(HttpVerbs.Post)] public ActionResult Delete(Employe contactToDelete) { if (!ModelState.IsValid) return View(); try { var originalContact = (from c in _entities.employe where c.id_emp == contactToDelete.id_emp select c).FirstOrDefault(); _entities.ApplyCurrentValues(originalContact.EntityKey.EntitySetName, contactToDelete); _entities.SaveChanges(); return RedirectToAction("Index"); } catch { return View(); } }
Partager