Vous êtes sur la page 1sur 13

Crer un modle de classe

avec Entity Framework (C #)

Par Jrme Lambert (Traduction)

Date de publication : 27 avril 2009

Stephen Walther construit une application web oriente base de donnes afin de prsenter
l'utilisation du Microsoft Entity Framework avec ASP.NET MVC.
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Traduction.....................................................................................................................................................................3
Introduction...................................................................................................................................................................3
Cration de la base de donnes de films................................................................................................................... 3
Cration du modle de donnes ADO.NET Entity......................................................................................................4
Modification de l'ADO.NET Entity Data Model............................................................................................................ 6
Slection d'enregistrements avec l'Entity Framework................................................................................................. 7
Cration d'enregistrements avec l'Entity Framework.................................................................................................. 9
Mise jour des enregistrements avec l'Entity Framework........................................................................................11
Suppresion d'enregistrement avec l'Entity Framework............................................................................................. 13
Conclusion..................................................................................................................................................................13

-2-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Traduction

Cet article est la traduction la plus fidle possible de l'article original : Creating Model Classes with the Entity
Framework (C#)

Introduction

Le but de ce tutoriel est d'expliquer comment vous pouvez crer des classes d'accs aux donnes en utilisant
Microsoft Entity Framework lors du dveloppement d'une application ASP.NET MVC. Ce tutoriel ne ncessite aucune
connaissance du Microsoft Entity Framework. A la fin de ce tutorial, vous serez capable d'utiliser l'Entity Framework
pour la slection, cration, mise jour et suppression de donnes en base de donnes.

Le Microsoft Entity Framework est un outil de Mapping Objet Relationnel (OR/M) qui vous permet la gnration
automatique d'une couche d'accs aux donnes partir d'une base de donnes. L'Entity Framework vous permet
ainsi d'viter le travail fastidieux de cration la main de vos classes d'accs aux donnes.

Afin d'illustrer comment vous pouvez utiliser le Microsoft Entity Framework avec ASP.NET MVC, nous construirons
une simple application d'exemple. Nous crerons une application de gestion de films qui permet d'afficher et diter
les films de votre base de donnes

Ce tutorial suppose que vous avez Visual Studio 2008 ou Visual Web Developer 2008 avec le Service Pack 1. Le
Service Pack 1 est ncessaire pour pouvoir utiliser l'Entity Framework. Vous pouvez tlcharger le Service Pack 1
de Visual Studio 2008 or de Visual Web Developper 2008 partir de l'adresse suivante :

http://www.asp.net/downloads/

Il n'y a aucun lien fondamental entre ASP.NET MVC et le Microsoft Entity Framework. Il
existe de nombreuses alternatives pour utiliser l'Entity Framework avec ASP.NET MVC.
Par exemple, vous pouvez construire votre modle de classes MVC en utilisant d'autres
outils d'OR/M comme Microsoft LINQ to SQL, NHibernate ou SubSonic.

Cration de la base de donnes de films

L'application de gestion de films utilise une table de base de donnes nomme Movies qui contient les colonnes
suivantes :

Nom colonne Type de donnes Null autoris ? Cl primaire ?


Id Int Faux Vrai
Title nvarchar(100) Faux Faux
Director nvarchar(100) Faux Faux

Vous pouvez ajouter cette table un projet ASP.NET MVC en suivant les tapes ci-dessous :

1 Cliquez-droit sur le rpertoire App_Data dans la fentre de l'explorateur de solution et slectionnez Add,
NewItem.
2 Dans la boite de dialogue Add New Item, slectionnez SQL Server Database, donnez comme nom de base
de donnes MoviesDB.mdf et cliquez sur le bouton Add.
3 Double-cliquez sur le fichier MoviesDB.mdf pour ouvrir la fentre Server Explorer/Database Explorer.
4 Etendez la connexion la base de donnes MoviesDB.mdf, cliquez-droit sur le rpertoire Tables et
slectionnez Add New Table.
5 Dans le designer de la table, ajoutez les colonnes Id, Title et Director.
6 Cliquez sur le bouton Save (Il a un icne de disquette) pour sauvegarder la nouvelle table et donnez comme
nom Movies.

-3-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Aprs que vous ayez cr la table Movies dans la base de donnes, vous devez ajouter quelques donnes bidon
cette mme table. Cliquez-droit sur la table Movies and slectionnez l'option Show Table Data. Vous pourrez ainsi
entrer des faux films via le grille qui apparait.

Cration du modle de donnes ADO.NET Entity

Afin d'utiliser l'Entity Framework, vous avez besoin de crer un Entity Data Model. Vous pouvez tirer profit de Visual
Studio Entity Data Model Wizard pour gnrer automatiquement un Entity Data Model partir d'une base de donnes.

Suivez les tapes suivantes :

1 Cliquez-droit sur le rpertoire Models dans la fentre de l'explorateur de solution et slectionnez l'option Add,
New Item.
2 Dans la boite de dialogue Add New Item, slectionnez le catgorie Data (voir Figure 1).
3 Slectionnez le template ADO.NET Entity Data Model, donnez comme nom MoviesDBModel.edmx et
cliquez sur le bouton Add. Le clique sur le bouton Add lance le Data Model Wizard.
4 A l'tape Choose Model Contents, choisissez l'option Generate from a database et cliquez sur le bouton
Next (voir Figure 2).
5 A l'tape Choose Your Data Connection, slectionnez la connexion la base de donnes MoviesDB.mdf,
entrez MoviesDBEntities comme nom de settings pour la connexion aux entits et cliquez sur le bouton Next
(voir Figure 3).
6 A l'tape Choose Your Database Objects, slectionnez la table Movie de la base de donnes et cliquez sur
le bouton Finish (voir Figure 4).

Aprs avoir complt ces tapes, le designer de ADO.NET Entity Data Model (Entity Designer) s'ouvre.

Figure 1 - Cration d'un nouveau Entity Data Model

-4-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Figure 2 - Etape Choose Model Contents

Figure 3 - Etape Choose Your Data Connection

-5-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Figure 4 - Etape Choose Your Database Objects

Modification de l'ADO.NET Entity Data Model

Aprs que vous ayez cr un Entity Data Model, vous pouvez modifier le modle en tirant profit de l'Entity Designer
(voir Figure 5). Vous pouvez ouvrir l'Entiry Designer n'importe quel moment en double cliquant sur le fichier
MoviesDBModel.edmx contenu dans le rpertoire Models via la fentre de l'explorateur de solution.

Figure 5 - ADO.NET Entity Data Model Designer

Par exemple, vous pouvez utiliser l'Entity Designer pour changer les noms de classes que l'Entity Data Model Wizard
gnre. Le Wizard a cr une nouvelle classe d'accs aux donnes nomme Movies. En d'autres mots, le Wizard a
donn comme nom le mme nom que celui de la table en base de donnes. Etant donn que nous utiliserons cette
classe pour reprsenter une instance prcise d'un Movie, nous devons renommer la classe de Movies en Movie.

-6-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Si vous voulez renommer une classe d'entit, vous pouvez double-cliquer sur le nom de la classe dans l'Entity
Designer et entrer un nouveau nom (voir Figure 6). Sinon, vous pouvez changer le nom de l'entit via la fentre des
proprits aprs avoir slectionner une entit dans l'Entity Designer.

Figure 6 - Modification d'un nom d'entit

N'oubliez pas de sauvegarder votre Entity Data Model aprs avoir effectu une modification en cliquant sur le boutton
Save (Il a un icne de disquette). Derrire tout a, l'Entity Designer gnre a ensemble de classes en C#. Vous
pouvez visualisez ces classes en ouvrant le fichier MoviesDBModel.Designer.cs partir de la fentre de l'explorateur
de solution.

Par contre, ne modifiez pas le code dans le fichier Designer.cs car il sera la prochaine fois
que vous utiliserez l'Entity Designer. Si vous voulez tendre les fonctionnalits des classes
d'entits dfinie dans le fichier Designer.cs, vous pouvez crer des classes partielless
(partial class) dans des fichiers spars.

Slection d'enregistrements avec l'Entity Framework

Commenons par construire notre application de gestion de films en crant une page qui affiche une liste de films.
Le controlleur Home du listing 1 expose une action nomme Index(). L'action Index() retourne l'ensemble des films
depuis la table Movies de la base de donnes en tirant profit de l'Entity Framework.

Listing 1 - Controllers\HomeController.cs
using System.Linq;
using System.Web.Mvc;
using MovieEntityApp.Models;

namespace MovieEntityApp.Controllers
{
[HandleError]

-7-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Listing 1 - Controllers\HomeController.cs
public class HomeController : Controller
{
MoviesDBEntities _db;

public HomeController()
{
_db = new MoviesDBEntities();
}

public ActionResult Index()


{
ViewData.Model = _db.MovieSet.ToList();
return View();
}

}
}

Notez que le contrleur du Listing 1 inclut une constructeur. Le constructeur initialise un champ de classe nomm _db.
Ce champ _db reprsente les entits de base de donnes gnres par le Microsoft Entity Framework. Le champ
_db est une instance de la classe MoviesDBEntities qui a t gnre par l'Entity Designer.

Pour utiliser la classe theMoviesDBEntities au sein du contrleur Home, vous devez


importer l'espace de nom MovieEntityApp.Models (MVCProjectName.Models).

Le champ _db est utilise dans la ethode Index() pour rcuprer les enregistrements de la table Movies de la
base de donnes. L'expression _db.MovieSet reprsente tous les enregistrements de la table Movies de la base de
donnes. La mthode ToList() est utilise pour convertir l'ensemble des films en une collection gnrique d'objets
Movie (List<Movie>).

Les enregistrements de films sont rcuprs avec l'aide de LINQ to Entities. L'action Index() du Listing 1 utilise la
method syntax de LINQ pour rcuprer l'ensemble des enregistrements de la base de donnes. Si vous prfrez,
vous pouvez utiliser la query syntax de LINQ la place. Les deux instructions suivantes font exactement la mme
chose :

ViewData.Model = _db.MovieSet.ToList();
ViewData.Model = (from m in _db.MovieSet select m).ToList();

Utilisez la syntaxe LINQ - method syntax ou query syntax - que vous trouvez la plus intuitive. Il n'y a aucune diffrence
de performance entre les deux approches - La seule diffrence est le style.

La vue du Listing 2 est utilis pour afficher les enregistrements de films.

Listing 2 - Views\Home\Index.aspx
<%@ Page Language="C#"
Inherits="System.Web.Mvc.ViewPage<List<MovieEntityApp.Models.Movie>>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Index</title>
</head>
<body>
<div>

<% foreach (var m in ViewData.Model)


{ %>

Title: <%= m.Title %>


<br />

-8-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Listing 2 - Views\Home\Index.aspx
Director: <%= m.Director %>
<br />
<%= Html.ActionLink("Edit", "Edit", new { id = m.Id })%>
<%= Html.ActionLink("Delete", "Delete", new { id = m.Id })%>

<hr />
<% } %>

<%= Html.ActionLink("Add Movie", "Add") %>

</div>
</body>
</html>

La vue du Listing 2 contient une boucle foreach qui itre chaque enregistrement de film et afficher les valeurs des
proprits Title et Director de l'enregistrement film. Notez que les liens Edit et Delete sont affichs aprs chaque
enregistrement. En outre, un lien Add Movie apparait au bas de la page (voir Figure 7).

Figure 7 - La vue Index

La vue Index est une vue type (typed view). La page Index inclut une directive <%@ Page %> avec un attribut
Inherits qui convertit la proprit Model en un type gnrique fortement type, c'est--dire une collection List d'objets
Movie (List<Movie>).

Cration d'enregistrements avec l'Entity Framework

Vous pouvez utiliser l'Entity Framework pour render plus facile l'insertion de nouveaux enregistrements dans une
table de base de donnes. Listing 3 contient deux nouvelles actions la classe contrleur Home que vous pouvez
utiliser pour insrer des nouveaux enregistrements dans la table Movie de la base de donnes.

-9-
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Listing 3 - Controllers\HomeController.cs (Add mthodes)


public ActionResult Add()
{
return View();
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Add(FormCollection form)
{
var movieToAdd = new Movie();

// Dsrialisation (Inclus une simple vide !)


TryUpdateModel(movieToAdd, new string[] { "Title", "Director" }, form.ToValueProvider());

// Validation
if (String.IsNullOrEmpty(movieToAdd.Title))
ModelState.AddModelError("Title", "Title is required!");
if (String.IsNullOrEmpty(movieToAdd.Director))
ModelState.AddModelError("Director", "Director is required!");

// Si valide, sauvegarde le film dans la base de donnes


if (ModelState.IsValid)
{
_db.AddToMovieSet(movieToAdd);
_db.SaveChanges();
return RedirectToAction("Index");
}

// Sinon, raffiche la page


return View(movieToAdd);
}

La premire action Add() retourne simplement une vue. La vue contient une page pour l'ajout d'un nouveau film dans
la base de donnes (voir Figure 8). Losque vous envoyez la page, la seconde action Add() est invoque.

Notez que la seconde action Add() est dcore avec un attribute AcceptVerbs. Cette action peut tre invoque
uniquement lors d'une opration http POST. En d'autres mots, cette action peut seulement tre invoque quand une
page HTML est poste.

La seconde action Add() cre une nouvelle instance de la classe Movie de l'Entity Framework avec l'aide
de la mthode TryUpdateModel() de ASP.NET MVC. La mthode TryUpdateModel() prend les champs dans
FormCollection pass la mthode Add() et assigne les valeurs des champs de la page HTML la classe Movie.

En utilisant l'Entity Framework, vous devez fournir une simple liste de proprits lorsque
vous utilisez les mthodes TryUpdateModel ou UpdateModel pour mettre jour les
proprits d'une classe d'entit.

Ensuite, l'action Add() realize quelques validation au niveau de la page. L'action vrifie les deux prorprits Title et
Director ont des valeurs. Si il y a une erreur de validation, un message d'erreur de validation est ajout au ModelState.

Si il n'y a aucune erreur de validation, un nouvel enregistrement de film est ajout la table Movies en base de
donnes avec l'aide de l'Entity Framework. Le nouvel enregistrement est ajout la base de donnes les deux lignes
de codes suivantes :

_db.AddToMovieSet(movieToAdd);
_db.SaveChanges();

La premire ligne de code ajoute la nouvelle entit Movie l'ensemble des films qui sont tracs par l'Entity Framework.
La seconde ligne de code sauvegarde tous les changements qui ont t fait sur les objets films tracs.

- 10 -
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Figure 8 - La vue Add

Mise jour des enregistrements avec l'Entity Framework

Vous pouvez suivre presque la mme approche pour mettre jour les enregistrements d'une base de donnes avec
l'Entity Framework comme l'approche que nous venons juste de suivre pour la cration d'enregistrement en base de
donnes. Listing 4 contient deux nouvelles actions de contrleur nomme Edit(). La premire action Edit() retourne
une page HTML pour diter un enregistrement de film. La seconde action Edit() tente de mettre jour la base de
donnes.

Listing 4 - Controllers\HomeController.cs (Edit mthodes)


public ActionResult Edit(int id)
{
// Obtient le film mettre jour
var movieToUpdate = _db.MovieSet.First(m => m.Id == id);

ViewData.Model = movieToUpdate;
return View();
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(FormCollection form)
{
// Obtient le film mettre jour
var id = Int32.Parse(form["id"]);
var movieToUpdate = _db.MovieSet.First(m => m.Id == id);

// Dsrialise (inclus simple liste !)


TryUpdateModel(movieToUpdate, new string[] { "Title", "Director" }, form.ToValueProvider());

// Validation
if (String.IsNullOrEmpty(movieToUpdate.Title))
ModelState.AddModelError("Title", "Title is required!");

- 11 -
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Listing 4 - Controllers\HomeController.cs (Edit mthodes)


if (String.IsNullOrEmpty(movieToUpdate.Director))
ModelState.AddModelError("Director", "Director is required!");

// Si valide, sauvegarde le film en base de donnes


if (ModelState.IsValid)
{
_db.SaveChanges();
return RedirectToAction("Index");
}

// Sinon, raffiche la page


return View(movieToUpdate);
}

La seconde action Edit() commence par retrouver l'enregistrement Movie en base de donnes qui correspond l'Id
du film dit. L'instructoion LINQ to Entities suivantes s'empare du premier enregistrement en base de donnes qui
correspond un Id spcifi :

var movieToUpdate = _db.MovieSet.First(m => m.Id == id);

Ensuite, la mthode TryUpdateModel() est utilis pour assigner les valeurs des champs de la page HTML aux valeurs
des proprits de l'entit film. Notez qu'une simple liste est soumise pour spcifier les proprits exactes mettre
jour.

Next, the TryUpdateModel() method is used to assign the values of the HTML form fields to the properties of the
movie entity. Notice that a white list is supplied to specify the exact properties to update.

Au final, si il n'y a aucune erreur de validation, la table sous-jacente Movies de la base de donnes est mise jour
avec tous les changements en appelant la mthode SaveChanges().

Lors de l'dition d'enregistrements de la base de donnes, vous avez besoin de passer l'action contrleur (qui
excute la mise jour de la base de donnes) l'Id de l'enregistrement qui est en train d'tre dit.

Listing 5 - Views\Home\Edit.aspx
<%@ Page Language="C#"
Inherits="System.Web.Mvc.ViewPage<MovieEntityApp.Models.Movie>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Edit</title>
<style type="text/css">

.input-validation-error
{
background-color:Yellow;
}

</style>
</head>
<body>
<div>

<h1>Edit Movie</h1>

<form method="post" action="/Home/Edit">

<!-- Include Hidden Id -->


<%= Html.Hidden("id") %>

Title:
<br />

- 12 -
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/
Crer un modle de classe avec Entity Framework (C #) par Jrme Lambert (Traduction)

Listing 5 - Views\Home\Edit.aspx
<%= Html.TextBox("title") %>

<br /><br />


Director:
<br />
<%= Html.TextBox("director") %>

<br /><br />


<input type="submit" value="Edit Movie" />
</form>

</div>
</body>
</html>

Suppresion d'enregistrement avec l'Entity Framework

La dernire opration de base de donnes, dont nous avons besoin d'entreprendre dans ce tutoriel, est la suppression
d'enregistrements en base de donnes.

Listing 6 -- \Controllers\HomeController.cs (Delete action)


public ActionResult Delete(int id)
{
// Obtenir le film supprimer
var movieToDelete = _db.MovieSet.First(m => m.Id == id);

// Suppression
_db.DeleteObject(movieToDelete);
_db.SaveChanges();

// Affiche la vue Index


return RedirectToAction("Index");
}

L'action Delete() rcupre en premier lieu l'entit Movie qui correspond l'Id pass l'action. Ensuite, le film est
supprim de la base de donnes en appelant la mthode DeleteObject(). Au final, l'utilisateur est redirig vers la
page Index.

Conclusion

Le but de ce tutorial est de dmontrer comment vous pouvez construire une application web de gestion de base de
donnes en tirant profit de ASP.NET MVC et du Microsoft Entity Framework. Vous avez dcouvert comment construire
une application qui permet la selection, creation, mise jour et suppression d'enregistrement de base de donnes.

Dans un premier temps, nous avons abord l'utilisation de l'Entity Data Model Wizard pour gnrer un Entity Data
Model partir de Visual Studio. Ensuite, nous avons vu comment utiliser LINQ to Entities pour rcuprer l'ensemble
des enregistrements de la table Movies de la base de donnes. Au final, nous avons utilis l'Entity Framework pour
crer, mettre jour et supprimer des enregistrements de base de donnes.

- 13 -
Copyright 2009 Equipe Dotnet. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse
de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dotnet.developpez.com/mvc/mvc-entity-framework/