Entity Framework Core peut accéder à différentes bases de données par le biais de bibliothèques plug-in appelées fournisseurs de base de données.
Fournisseurs actuels
Important
Les fournisseurs EF Core sont créés à partir de différentes sources. Les fournisseurs ne sont pas tous gérés dans le cadre du projet Microsoft Entity Framework Core. Quand vous envisagez un fournisseur, veillez à évaluer la qualité, la gestion des licences, la prise en charge, etc., pour vérifier qu’il répond à vos besoins. Veillez également à passer en revue la documentation de chaque fournisseur pour obtenir des informations détaillées sur la compatibilité des versions.
Important
En règle générale, les fournisseurs EF Core ne fonctionnent pas avec les versions principales. Par exemple, un fournisseur publié pour EF Core 7 ne fonctionne pas avec EF Core 8.
Une fois les packages installés, configurez le fournisseur dans votre DbContext : soit dans la méthode OnConfiguring, soit dans la méthode AddDbContext si vous utilisez un conteneur d’injection de dépendance.
Par exemple, la ligne suivante configure le fournisseur SQL Server avec la chaîne de connexion passée :
Les fournisseurs de base de données peuvent étendre Core EF pour activer des fonctionnalités propres à des bases de données spécifiques. Certains concepts, communs à la plupart des bases de données, sont inclus dans les principaux composants d’EF Core. Ces concepts comprennent l’expression des requêtes dans LINQ, les transactions et le suivi des changements apportés aux objets une fois qu’ils sont chargés à partir de la base de données.
Certains concepts sont propres à un fournisseur. Par exemple, le fournisseur SQL Server vous permet de configurer des tables à mémoire optimisée (fonctionnalité spécifique à SQL Server). D’autres concepts sont propres à une classe de fournisseurs.
Par exemple, les fournisseurs EF Core pour les bases de données relationnelles reposent sur la bibliothèque Microsoft.EntityFrameworkCore.Relational commune, qui fournit des API pour configurer les mappages de tables et de colonnes, les contraintes de clé étrangère, etc. Les fournisseurs sont généralement distribués sous la forme de packages NuGet.
Important
Quand une nouvelle version corrective d’EF Core est publiée, des mises à jour au package Microsoft.EntityFrameworkCore.Relational sont souvent incluses.
Quand vous ajoutez un fournisseur de base de données relationnelle, ce package devient une dépendance transitive de votre application.
Mais de nombreux fournisseurs sont publiés indépendamment d’EF et peuvent ne pas être mis à jour pour dépendre de la nouvelle version corrective de ce package.
Pour que vous receviez tous les correctifs, nous vous recommandons d’ajouter la version corrective de Microsoft.EntityFrameworkCore.Relational comme dépendance directe de votre application.
Collaborer avec nous sur GitHub
La source de ce contenu se trouve sur GitHub, où vous pouvez également créer et examiner les problèmes et les demandes de tirage. Pour plus d’informations, consultez notre guide du contributeur.