Présentation d'un fichier .edmx (Entity Framework)

Un fichier .edmx est un fichier XML qui définit un modèle conceptuel, un modèle de stockage et le mappage entre ces modèles. Un fichier .edmx contient également des informations utilisées par ADO.NET Entity Data Model Designer (Entity Designer) pour restituer graphiquement un modèle. Pour créer un fichier .edmx, la méthode recommandée consiste à utiliser l'Assistant EDM. Pour plus d'informations, consultez Procédure : créer un fichier .edmx (Entity Data Model Tools).

Des modifications sont apportées à un fichier .edmx lorsque vous utilisez le Concepteur d'entités pour modifier votre modèle et lorsque vous utilisez l'Assistant Mise à jour du modèle pour mettre à jour votre modèle selon les modifications apportées à la base de données sous-jacente. Pour plus d'informations, consultez Assistant Mise à jour du modèle (Entity Data Model Tools). Dans certains scénarios, vous devrez peut-être modifier un fichier .edmx manuellement. Pour plus d'informations, consultez Modification d'un fichier .edmx manuellement (Entity Framework).

Par défaut, un fichier .edmx s'ouvre dans le Concepteur d'entités. Vous pouvez également ouvrir un fichier .edmx à l'aide de l'Éditeur XML en suivant ces étapes :

  1. Assurez-vous que votre projet est ouvert dans Visual Studio.

  2. Cliquez avec le bouton droit sur le fichier .edmx dans l'Explorateur de solutions, puis sélectionnez Ouvrir avec.

  3. Sélectionnez Éditeur XML, puis cliquez sur OK.

Contenu d'un fichier .edmx

Voici la répartition de haut niveau du contenu d'un fichier .edmx. Pour plus d'informations, consultez les schémas .edmx dans le répertoire XML Visual Studio.

Cc982042.note(fr-fr,VS.100).gifRemarque :
Le schéma pour les applications qui ciblent le .NET Framework version 4 est défini dans le fichier Microsoft.Data.Entity.Design.Edmx_2.xsd.Le schéma pour les applications qui ciblent le .NET Framework version 3.5 SP1 est défini dans le fichier Microsoft.Data.Entity.Design.Edmx_1.xsd.

Runtime Content (edmx:Runtime)

Cette section contient des informations utilisées pour générer les fichiers de modèle et de mappage pour les applications Entity Framework. Pour plus d'informations, consultez la propriété Build Action dans la section Propriétés d'un fichier .edmx ci-dessous.

Cc982042.note(fr-fr,VS.100).gifRemarque :
Un fichier .edmx est ajouté automatiquement à une application qui référence un service ADO.NET Data Services.Dans ce cas, le fichier .edmx contient un nœud edmx:DataServices, et non un nœud edmx:Runtime.Pour plus d'informations, consultez ADO.NET Data Services Framework.

  • Storage Model Content (edmx:StorageModels) : cette section décrit le schéma de la base de données cible, et est écrite en SSDL (Store Schema Definition Language). Pour plus d'informations, consultez SSDL Specification et EntityContainer Element (SSDL).

  • Conceptual Model Content (edmx:ConceptualModels) : cette section définit les types d'entité, les types complexes, les associations, les conteneurs d'entités, les jeux d'entités et les ensembles d'associations dans le domaine d'application. Cette section est écrite en CSDL (Conceptual Schema Definition Language). Pour plus d'informations, consultez CSDL Specification et EntityContainer Element (CSDL).

  • Mapping Content (edmx:Mappings) : cette section décrit le mappage entre le modèle conceptuel et la base de données cible, et est écrite en MSL (Mapping Specification Language). Pour plus d'informations, consultez MSL Specification.

Designer Content (edmx:Designer)

Cette section contient des informations utilisées par le Concepteur d'entités pour restituer graphiquement un modèle conceptuel, et pour définir des propriétés du modèle conceptuel et des propriétés au moment du design.

Cc982042.note(fr-fr,VS.100).gifRemarque :
Un fichier .edmx est ajouté automatiquement à une application qui référence un service ADO.NET Data Services.Dans ce cas, le fichier .edmx ne contient pas de nœud edmx:Designer et ne peut pas être affiché avec le Concepteur d'entités.Pour plus d'informations, consultez ADO.NET Data Services Framework.

  • Connection Content (edmx:Connection) : cette section décrit les propriétés du modèle conceptuel qui affectent la chaîne de connexion. À l'heure actuelle, la seule propriété que vous pouvez définir dans cette section est la propriété MetadataArtifactProcessing. Pour plus d'informations, consultez Connection Strings.

  • Options Content (edmx:Options) : cette section décrit les propriétés facultatives du modèle conceptuel. À l'heure actuelle, seule la propriété ValidateOnBuild est définie ici.

  • Diagrams (edmx:Diagrams) : cette section contient des informations utilisées par le Concepteur d'entités pour restituer graphiquement le modèle conceptuel.

Propriétés du modèle conceptuel

Les propriétés d'un modèle conceptuel sont définies dans un fichier .edmx. La liste suivante décrit les propriétés du modèle conceptuel qui sont visibles dans la fenêtre Propriétés Visual Studio :

Cc982042.note(fr-fr,VS.100).gifRemarque :
Les propriétés du modèle conceptuel ne sont pas les mêmes que les propriétés du fichier .edmx lui-même.Pour plus d'informations, consultez la section .edmx File Properties ci-dessous.

  • Connection String
    Chaîne de connexion cliente de l'entité. La chaîne de connexion indiquée provient du fichier App.config ou Web.Config du projet, et a le même nom que le Conteneur d'entités. Pour plus d'informations, consultez Connection Strings.
  • Database Schema Name
    Nom de schéma de la base de données généré lors de la création d'une base de données à partir d'un modèle conceptuel.
  • Entity Container Access
    Contrôle si la classe de contexte de l'objet générée est Public ou Interne.
  • Metadata Artifact Processing
    Contrôle si les fichiers de modèle et de mappage (fichiers .csdl, .ssdl et .msl) sont incorporés dans un assembly de sortie ou copiés dans le répertoire de sortie.
  • Namespace
    Espace de noms du modèle conceptuel. Pour plus d'informations, consultez Schema Element (CSDL).
  • Pluralize New Objects
    Contrôle si les nouveaux noms de jeu d'entités et noms de propriété de navigation sont mis au pluriel.
  • Transform Related Text Templates On Save
    Les modèles de texte sont mis en rapport avec un fichier .edmx en insérant le nom de fichier .edmx dans le modèle de texte. Pour plus d'informations, consultez Procédure : personnaliser la génération de code de couche objet (Entity Data Model Designer). Lorsque la propriété Transform Related Text Templates On Save a la valeur True, tous les modèles de texte mis en rapport avec fichier .edmx sont traités lors de l'enregistrement du fichier .edmx. Lorsque la propriété a la valeur False, aucun des modèles de texte mis en rapport n'est traité.
  • Validate On Build
    Contrôle si le modèle est validé lorsque le projet est généré.

Propriétés d'un fichier .edmx

Les propriétés Build Action, Custom Tool et Custom Tool Namespace sont les propriétés d'un fichier .edmx. Pour plus d'informations sur les propriétés Copy to Output Directory et File Name d'un fichier .edmx, consultez Propriétés des fichiers dans la documentation Visual Studio.

Cc982042.note(fr-fr,VS.100).gifRemarque :
La propriété de fichier Copy to Output Directory n'est pas utilisée pour spécifier que les fichiers de modèle et de mappage doivent être copiés dans le répertoire de sortie.Utilisez la propriété Metadata Artifact Processing du modèle conceptuel à la place.

Pour afficher et modifier les propriétés d'un fichier .edmx dans Visual Studio, procédez comme suit :

  1. Ouvrez un projet qui contient un fichier .edmx dans Visual Studio.

  2. Cliquez avec le bouton droit sur le fichier .edmx dans l'Explorateur de solutions, puis sélectionnez Propriétés.

    Les propriétés du fichier sont visibles dans la fenêtre Propriétés.

La liste suivante décrit les propriétés Build Action, Custom Tool et Custom Tool Namespace d'un fichier .edmx :

  • Build Action
    Lorsque cette propriété a la valeur EntityDeploy (valeur par défaut), trois fichiers sont créés à partir du fichier .edmx lorsqu'une build est exécutée : le fichier du modèle conceptuel (.csdl), le fichier du modèle de stockage (.ssdl) et le fichier de mappage (.msl). Ces fichiers sont incorporés en tant que ressources ou copiés dans le répertoire de sortie selon la valeur de la propriété Metadata Artifact Processing du modèle. Pour plus d'informations, consultez Procédure : modifier les propriétés de modèle conceptuel (Entity Data Model Tools). Pour plus d'informations sur d'autres valeurs de la propriété Build Action, consultez Propriétés des fichiers.
  • Custom Tool
    Lorsque cette propriété a la valeur EntityModelCodeGenerator (valeur par défaut) et que la Stratégie de génération de code a la valeur Par défaut, le Concepteur d'entités crée un fichier de code source qui contient les classes générées à partir du modèle conceptuel défini dans le fichier .edmx. Pour plus d'informations, consultez Présentation du code généré (Entity Data Model Designer).
  • Custom Tool Namespace
    Par défaut, cette propriété est vide. Lorsque vous fournissez une valeur, elle est utilisée comme espace de noms pour le code généré par l'outil spécifié dans la propriété Custom Tool. Pour plus d'informations, consultez Présentation du code généré (Entity Data Model Designer).

Voir aussi

Concepts

Présentation du code généré (Entity Data Model Designer)

Autres ressources

CSDL Specification