Entity Framework Core (EF Core), avec sa version 2.0 et tout dernièrement avec la 2.1, a introduit beaucoup de nouvelles fonctionnalités. Avec ses dernières nouveautés, EF Core commence à rattraper à pas de géants Entity Framework 6 (EF 6), la version de l’ORM (Object Mapping Relational) de Microsoft encore largement utilisée. Ces fonctionnalités nous offrent de nouvelles possibilités permettant d’écrire un code simple, clair et précis grâce à de nouvelles techniques pour éviter certaines solutions de contournement souvent appelées hacks ou workarounds qu’on avait l’habitude de faire avec l’ORM EF 6 et le plus souvent pour être en adéquation avec ce dernier.
Petite précision que je trouve qu’il est nécessaire de faire au cas où vous pensez comme ceux qui disent « Je ne cible pas la plateforme .Net Core donc je n’ai pas besoin d’utiliser de EF Core » : Vous n’êtes pas obligés de cibler la plateforme .Net Core pour pouvoir utiliser EF Core dans vos applications existantes, celles ciblant la plateforme traditionnelle .Net. Les versions 1.x de EF Core peuvent être utilisées à partir de .Net 4.5.1. Les versions 2.x, quant à elles, nécessitent de cibler au minimum la version 4.6.1 de .Net.
Les manquements de EF Core dans les versions initiales pouvaient aussi empêcher beaucoup de développeurs de l’adopter assez rapidement. Il y a aussi le fait qu’on attend les versions suivantes, celles qui viennent après la version initiale; une solution permettant de laisser les early adopters remonter les difficultés rencontrées à l’utilisation et spécifier les différentes précautions à prendre lors de la migration de EF vers EF Core. Les dernières versions ont largement pallier ces difficultés et manquements.
Partant du fait que vous projetez d’utiliser EF Core dans vos futures applications ou tout simplement vous pensez faire une migration vers cette nouvelle version alors à travers une série d’articles je vais vous parler des différentes solutions et techniques apportées par EF Core qui vous permettront d’améliorer votre code et ainsi éviter de répéter les différentes solutions de contournement que vous avez eu à faire dans vos applications ciblant EF.
Chaque article de la série présentera une nouvelle façon de faire les choses avec EF Core tout en ayant au préalable montré comment cela était fait avec EF 6. Chaque partie indiquera une problématique rencontrée avec EF et comment la résoudre de façon efficace avec EF Core. Chaque article est totalement indépendant des autres ce qui veut dire que vous pouvez débuter par n’importe lequel.
Les différentes parties de la série Les nouvelles techniques EF Core :
- Introduction (cet article)
- Les convertisseurs de valeurs : nous allons parler des convertisseurs de valeurs. Dans cette partie, j’explique comment utiliser une donnée sous une forme dans le code C# et permettre son stockage sous une autre forme dans la base données.
- Les constructeurs paramétrés