Fonctionnalités Entity Framework

Une application Entity Framework requiert la création d'un modèle conceptuel qui définit les entités et les relations, d'un modèle logique qui représente le modèle relationnel sous-jacent, et des mappages entre les deux. Un modèle objet programmable est ensuite généré à partir du modèle conceptuel.

Les fonctionnalités et les composants ci-dessous d'Entity Framework s'associent pour fournir un environnement de programmation de bout en bout.

  • Le modèle EDM (Modèle de données d'entité) représente l'élément central d'Entity Framework. Il spécifie la structure de schéma qui est utilisée pour générer les classes programmables utilisées par le code d'application. Les structures de stockage pour les données persistantes sont représentées dans un schéma de stockage et une spécification de mappage connecte la structure de schéma au schéma de stockage. Des entités conceptuelles peuvent être matérialisées sous forme d'objets ou lues de manière sérialisée à l'aide d'un lecteur de données. Les développeurs peuvent étendre ces objets pour prendre en charge les différents besoins des applications. Pour plus d'informations, voir Entity Data Model.

  • Le composant Object Services permet aux programmeurs d'utiliser les classes CLR (Common Language Runtime) générées à partir du modèle conceptuel. Il propose également la prise en charge de l'infrastructure pour Entity Framework en fournissant des services comme la gestion d'état, le suivi des modifications, la résolution d'identité, le chargement et l'exploration des relations, la propagation des modifications des objets en modifications de base de données et la prise en charge des requêtes pour Entité SQL. Pour plus d'informations, voir Object Services (Entity Framework).

  • LINQ to Entities fournit la prise en charge de la technologie LINQ (Language-Integrated Query) pour l'interrogation des entités. LINQ to Entities permet aux développeurs d'écrire des requêtes pour la base de données en utilisant l'un des langages de programmation .NET Framework pris en charge, tel que Visual Basic ou Visual C# . Pour plus d'informations, voir LINQ to Entities.

  • Entity SQL est un langage indépendant du stockage qui s'apparente à SQL et qui a été conçu pour interroger et manipuler des graphiques élaborés d'objets basés sur le modèle EDM (Entity Data Model). Pour plus d'informations, voir Langage Entity SQL.

  • Le fournisseur EntityClient étend le modèle de fournisseur ADO.NET en accédant aux données en termes d'entités conceptuelles et de relations. Il exécute les requêtes qui utilisent Entité SQL. Entité SQL fournit le langage de requête sous-jacent qui permet à EntityClient de communiquer avec la base de données. Pour plus d'informations, voir Fournisseur EntityClient pour Entity Framework.

  • Le composant de métadonnées ADO.NET gère les métadonnées pour les besoins au moment du design et de l'exécution d' Entity Framework. Toutes les métadonnées associées aux modèles et aux mappages sont exposées par le biais des interfaces de métadonnées qui sont indépendantes du mécanisme utilisé pour le stockage des métadonnées. Le mécanisme de stockage actuel utilise des fichiers basés sur trois dialectes XML : CSDL (Conceptual Schema Definition Language), SSDL (Store Schema Definition Language) et MSL (Mapping Specification Language). Pour plus d'informations, voir Métadonnées ADO.NET.

  • Entity Framework inclut un jeu d'outils évolutif qui génère des mappages et des classes partielles qui représentent les entités dans le modèle conceptuel. Pour plus d'informations, voir Outils Entity Data Model.

  • Entity Framework inclut un fournisseur de données SqlClient mis à jour qui prend en charge les arborescences de commandes canoniques. Pour plus d'informations, voir Fournisseur de données .NET Framework pour SQL Server (SqlClient) pour Entity Framework.

Diagramme architectural

Le diagramme suivant montre comment les différentes interfaces de programmation accessibles par l'utilisateur sont liées dans Entity Framework. Une flèche descendante indique une requête sur la source de données, alors qu'une flèche ascendante indique des données retournées. Object Services génère une arborescence de commandes canonique qui représente une opération LINQ to Entities ou Entité SQL sur le modèle conceptuel. Le fournisseur EntityClient transforme cette arborescence de commandes canonique, basée sur le modèle EDM, en une nouvelle arborescence de commandes canonique qui est une opération équivalente sur la source de données.

Diagramme architectural Entity Framework

Voir aussi

Concepts

Terminologie Entity Framework
Présentation d'Entity Framework

Autres ressources

Guide de référence des fonctionnalités (Entity Framework)
Mise en route (Entity Framework)