Comparaison par fonctionnalité entre EF Core et EF6EF Core and EF6 Feature by Feature Comparison

Le tableau suivant compare les fonctionnalités disponibles dans EF Core et EF6.The following table compares the features available in EF Core and EF6. Il a pour but d’établir une comparaison de haut niveau, sans pour autant répertorier toutes les fonctionnalités, ou de fournir des informations détaillées sur les éventuelles différences de fonctionnement d’une même fonctionnalité.It is intended to give a high level comparison and does not list every feature, or attempt to give details on possible differences between how the same feature works.

La colonne EF Core contient le numéro de la version du produit dans laquelle la fonctionnalité a été introduite pour la première fois.The EF Core column contains the number of the product version in which the feature first appeared.

Création d'un modèleCreating a Model EF 6EF 6 EF CoreEF Core
Mappage des classes de baseBasic class mapping OuiYes 1.01.0
Constructeurs avec des paramètresConstructors with parameters 2.12.1
Conversions de valeurs de propriétéProperty value conversions 2.12.1
Types mappés sans clé (types de requêtes)Mapped types with no keys (query types) 2.12.1
ConventionsConventions OuiYes 1.01.0
Conventions personnaliséesCustom conventions OuiYes 1.0 (partiel)1.0 (partial)
Annotations de donnéesData annotations OuiYes 1.01.0
API FluentFluent API OuiYes 1.01.0
Héritage : table par hiérarchie (TPH)Inheritance: Table per hierarchy (TPH) OuiYes 1.01.0
Héritage : table par type (TPT)Inheritance: Table per type (TPT) OuiYes
Héritage : table par classe concrète (TPC)Inheritance: Table per concrete class (TPC) OuiYes
Propriétés d’état de clichés instantanésShadow state properties 1.01.0
Clés secondairesAlternate keys 1.01.0
Plusieurs-à-plusieurs sans entité de jonctionMany-to-many without join entity OuiYes
Génération de clés : base de donnéesKey generation: Database OuiYes 1.01.0
Génération de clés : clientKey generation: Client 1.01.0
Types complexes/détenusComplex/owned types OuiYes 2.02.0
Données spatialesSpatial data OuiYes
Visualisation graphique de modèleGraphical visualization of model OuiYes
Éditeur de modèle graphiqueGraphical model editor OuiYes
Format de modèle : codeModel format: Code OuiYes 1.01.0
Format de modèle : EDMX (XML)Model format: EDMX (XML) OuiYes
Création d’un modèle à partir d’une base de données : ligne de commandeCreate model from database: Command line OuiYes 1.01.0
Création d’un modèle à partir d’une base de données : assistant VSCreate model from database: VS wizard OuiYes
Mise à jour d’un modèle à partir d’une base de donnéesUpdate model from database PartialPartial
Filtres de requête globaleGlobal query filters 2.02.0
Fractionnement de tableTable splitting OuiYes 2.02.0
Fractionnement d'entitéEntity splitting OuiYes
Mappage de fonctions scalaires de base de donnéesDatabase scalar function mapping MédiocrePoor 2.02.0
Mappage de champsField mapping 1.11.1
Interrogation des donnéesQuerying Data EF6EF6 EF CoreEF Core
Requêtes LINQLINQ queries OuiYes 1.0 (en cours pour les requêtes complexes)1.0 (in-progress for complex queries)
Code SQL généré lisibleReadable generated SQL MédiocrePoor 1.01.0
Évaluation du client/serveur mixteMixed client/server evaluation 1.01.0
Traduction GroupByGroupBy translation OuiYes 2.12.1
Chargement des données associées : hâtifLoading related data: Eager OuiYes 1.01.0
Chargement de données associées : chargement hâtif pour les types dérivésLoading related data: Eager loading for derived types 2.12.1
Chargement des données associées : différéLoading related data: Lazy OuiYes 2.12.1
Chargement des données associées : expliciteLoading related data: Explicit OuiYes 1.11.1
Requêtes SQL brutes : types d’entitésRaw SQL queries: Entity types OuiYes 1.01.0
Requêtes SQL brutes : types autres que des types d’entités (par exemple, des types de requêtes)Raw SQL queries: Non-entity types (e.g. query types) OuiYes 2.12.1
Requêtes SQL brutes : composition avec LINQRaw SQL queries: Composing with LINQ 1.01.0
Requêtes compilées explicitementExplicitly compiled queries MédiocrePoor 2.02.0
Langage de requêtes textuel (par exemple, Entity SQL)Text-based query language (e.g. Entity SQL) 1.01.0
Enregistrer des donnéesSaving Data EF6EF6 EF CoreEF Core
Suivi des modifications : instantanéChange tracking: Snapshot OuiYes 1.01.0
Suivi des modifications : notificationChange tracking: Notification OuiYes 1.01.0
Suivi des modifications : proxysChange tracking: Proxies OuiYes
État du suivi de l’accèsAccessing tracked state OuiYes 1.01.0
Accès concurrentiel optimisteOptimistic concurrency OuiYes 1.01.0
TransactionsTransactions OuiYes 1.01.0
Traitement par lot d’instructionsBatching of statements 1.01.0
Mappage de procédure stockéeStored procedure mapping OuiYes
API de bas niveau à graphes déconnectésDisconnected graph low-level APIs MédiocrePoor 1.01.0
De bout en bout à graphes déconnectésDisconnected graph End-to-end 1.0 (partiel)1.0 (partial)
Autres fonctionnalitésOther Features EF6EF6 EF CoreEF Core
MigrationsMigrations OuiYes 1.01.0
API de création/suppression de base de donnéesDatabase creation/deletion APIs OuiYes 1.01.0
Données seedSeed data OuiYes 2.12.1
Résilience de la connexionConnection resiliency OuiYes 1.11.1
Raccordements de cycle de vie (événements, interception)Lifecycle hooks (events, interception) OuiYes
Journalisation simple (par exemple, Database.Log)Simple Logging (e.g. Database.Log) OuiYes
Regroupement DbContextDbContext pooling 2.02.0
Fournisseurs de bases de donnéesDatabase Providers EF6EF6 EF CoreEF Core
SQL ServerSQL Server OuiYes 1.01.0
MySQLMySQL OuiYes 1.01.0
PostgreSQLPostgreSQL OuiYes 1.01.0
OracleOracle OuiYes 1.0 (1)1.0 (1)
SQLiteSQLite OuiYes 1.01.0
SQL Server CompactSQL Server Compact OuiYes 1.0 (2)1.0 (2)
DB2DB2 OuiYes 1.01.0
FirebirdFirebird OuiYes 2.02.0
Jet (Microsoft Access)Jet (Microsoft Access) 2.0 (2)2.0 (2)
In-memory (pour les tests)In-memory (for testing) 1.01.0
PlateformesPlatforms EF6EF6 EF CoreEF Core
.NET Framework (console, WinForms, WPF, ASP.NET).NET Framework (Console, WinForms, WPF, ASP.NET) OuiYes 1.01.0
.NET Core (console, ASP.NET Core).NET Core (Console, ASP.NET Core) 1.01.0
Mono & XamarinMono & Xamarin 1.0 (en cours)1.0 (in-progress)
UWPUWP 1.0 (en cours)1.0 (in-progress)

1 Un fournisseur payant est actuellement disponible.1 There is currently a paid provider available. Un fournisseur officiel gratuit pour Oracle est en cours de préparation.A free official provider for Oracle is being worked on. 2 Ce fournisseur fonctionne uniquement sur le .NET Framework (et non sur .NET Core).2 This provider only works on .NET Framework (not on .NET Core).