Entity Framework - Approche Code First

L'Entity Framework propose trois approches pour créer un modèle d'entité et chacune a ses propres avantages et inconvénients.

  • Code d'abord
  • La base de données d'abord
  • Modèle d'abord

Dans ce chapitre, nous décrirons brièvement la première approche du code. Certains développeurs préfèrent travailler avec le Designer dans Code tandis que d'autres préfèrent simplement travailler avec leur code. Pour ces développeurs, Entity Framework dispose d'un workflow de modélisation appelé Code First.

  • Le workflow de modélisation Code First cible une base de données qui n'existe pas et Code First la créera.

  • Il peut également être utilisé si vous avez une base de données vide et que Code First y ajoutera de nouvelles tables.

  • Code First vous permet de définir votre modèle à l'aide des classes C # ou VB.Net.

  • Une configuration supplémentaire peut éventuellement être effectuée à l'aide d'attributs sur vos classes et propriétés ou à l'aide d'une API fluide.

Pourquoi Code First?

  • Code First est en fait constitué d'un ensemble de pièces de puzzle. Premièrement, vos classes de domaine.

  • Les classes de domaine n'ont rien à voir avec Entity Framework. Ce ne sont que les éléments de votre domaine professionnel.

  • Entity Framework a donc un contexte qui gère l'interaction entre ces classes et votre base de données.

  • Le contexte n'est pas spécifique à Code First. C'est une fonctionnalité Entity Framework.

  • Code First ajoute un générateur de modèle qui inspecte vos classes gérées par le contexte, puis utilise un ensemble de règles ou de conventions pour déterminer comment ces classes et les relations décrivent un modèle et comment ce modèle doit être mappé à votre base de données.

  • Tout cela se produit au moment de l'exécution. Vous ne verrez jamais ce modèle, c'est juste en mémoire.

  • Code First a également la possibilité d'utiliser ce modèle pour créer une base de données si vous le souhaitez.

  • Il peut également mettre à jour la base de données si le modèle change, à l'aide d'une fonctionnalité appelée Migrations Code First.

Configuration de l'environnement

Pour commencer à utiliser l'approche EF Code First, vous devez installer les outils suivants sur votre système.

  • Visual Studio 2013 (.net framework 4.5.2) ou version ultérieure.
  • MS SQL Server 2012 ou plus récent.
  • Entity Framework via NuGet Package.

Installer EF via le package NuGet

Step 1 - Tout d'abord, créez l'application console depuis Fichier → Nouveau → Projet…

Step 2 - Sélectionnez Windows dans le volet gauche et Application console dans le volet modèle.

Step 3 - Entrez EFCodeFirstDemo comme nom et sélectionnez OK.

Step 4 - Faites un clic droit sur votre projet dans l'explorateur de solutions et sélectionnez Gérer les packages NuGet…

Cela ouvrira NuGet Package Manager et recherchera EntityFramework. Cela recherchera tous les packages liés à Entity Framework.

Step 5- Sélectionnez EntityFramework et cliquez sur Installer. Ou dans le menu Outils, cliquez sur Gestionnaire de package NuGet, puis sur Console du gestionnaire de package. Dans la fenêtre de la console du gestionnaire de package, entrez la commande suivante: Install-Package EntityFramework.

Lorsque l'installation est terminée, vous verrez le message suivant dans la fenêtre de sortie «Installation réussie de« EntityFramework 6.1.2 »sur EFCodeFirstDemo».

Après l'installation, EntityFramework.dll sera inclus dans votre projet, comme illustré dans l'image suivante.

Vous êtes maintenant prêt à commencer à travailler sur l'approche Code First.