Entity Framework - Approches DEV

Dans ce chapitre, concentrons-nous sur la création de modèles avec Designer ou Database First ou simplement en utilisant Code First. Voici quelques conseils qui vous aideront à décider quel workflow de modélisation choisir.

  • Nous avons déjà vu des exemples de modélisation Code First, de modélisation Database First et d'un workflow de modélisation Model First.

  • Les workflows Database First et Model First utilisaient le Designer, mais l'un commence par la base de données pour créer un modèle et l'autre commence au modèle pour créer une base de données.

  • Pour les développeurs qui ne souhaitent pas utiliser Visual Designer plus la génération de code, Entity Framework a un flux de travail complètement différent appelé Code First.

  • Le flux de travail typique de Code First est idéal pour les toutes nouvelles applications où vous n'avez même pas de base de données. Vous définissez vos classes et votre code, puis laissez Code First déterminer à quoi devrait ressembler votre base de données.

  • Il est également possible de démarrer Code First avec une base de données et cela rend Code First un peu contradictoire. Mais il existe un outil pour vous permettre de procéder à l'ingénierie inverse d'une base de données en classes, ce qui est un excellent moyen d'avoir une longueur d'avance sur le codage.

Compte tenu de ces options, regardons l'arbre de décision.

  • Si vous préférez travailler avec un concepteur visuel dans du code généré, vous souhaiterez choisir l'un des flux de travail impliquant EF Designer. Si votre base de données existe déjà, Database First est votre chemin.

  • Si vous souhaitez utiliser un concepteur visuel sur un tout nouveau projet sans base de données, vous souhaiterez utiliser Model First.

  • Si vous souhaitez simplement travailler avec du code et non avec un concepteur, alors Code First est probablement pour vous avec la possibilité d'utiliser l'outil qui rétroconce la base de données en classes.

  • Si vous avez des classes existantes, le mieux est de les utiliser avec Code First.