Gewusst wie: Aktualisieren einer EDMX-Datei bei einer Änderung der Datenbank (Entity Data Model-Tools)
Der ADO.NET Entity Data Model-Designer (Entity Designer) verwendet den Modellaktualisierungs-Assistenten, um eine EDMX-Datei mit den Änderungen in der Datenbank zu aktualisieren. Der Modellaktualisierungs-Assistent überschreibt während dieses Vorgangs das Speichermodell. Der Modellaktualisierungs-Assistent nimmt auch einige Änderungen am konzeptionellen Modell und den Zuordnungen vor. Diese Änderungen werden jedoch nur vorgenommen, wenn Objekte zur Datenbank hinzugefügt werden. Beispielsweise werden dem konzeptionellen Modell neue Entitätstypen hinzugefügt, wenn der Datenbank Tabellen hinzugefügt wurden, und Entitätstypen werden neue Eigenschaften hinzugefügt, wenn einer Tabelle neue Spalten hinzugefügt wurden. Ausführlichere Informationen über die an der EDMX-Datei vorgenommenen Änderungen finden Sie unter Vom Modellaktualisierungs-Assistenten an einer EDMX-Datei vorgenommene Änderungen.
Der Modellaktualisierungs-Assistent geht wie folgt vor:
Wenn ein Objekt aus der Datenbank gelöscht wurde, entfernt der Assistent das Objekt aus dem Speichermodell. Die Mappingspezifikationen werden aktualisiert, sodass keine Objekte im konzeptionellen Modell Speicherelementen zugeordnet werden, die nicht mehr existieren. Vorhandene Objekte des konzeptionellen Modells werden nicht gelöscht.
Wenn ein Objekt der Datenbank hinzugefügt wurde oder im vorherigen Modell nicht enthalten war, können Sie auswählen, ob Sie das Objekt dem Modell hinzufügen möchten. Das Speichermodell wird mit dem neu hinzugefügten Objekt aktualisiert. Im Falle einer Tabelle oder Sicht (nicht jedoch einer gespeicherten Prozedur), wird ein entsprechender Entitätstyp erstellt und dem Objekt zugeordnet.
Wenn ein Objekt aktualisiert wurde, aktualisiert der Assistent die Objektdefinition im Speichermodell. Wenn eine neue Spalte einer Tabelle oder Sicht hinzugefügt wurde, werden die entsprechenden Entitätstypen mit den entsprechenden Eigenschaften aktualisiert. Wenn die entsprechenden Entitätstypen zu einer Vererbungshierarchie gehören, wird nur die betroffene Entität, die dem Stamm der Hierarchie am nächsten ist, mit den passenden Eigenschaften aktualisiert. Dadurch wird verhindert, dass in untergeordneten Entitäten in der Hierarchie die gleichen Eigenschaften definiert werden, wie in deren übergeordneten Elementen.
So aktualisieren Sie die EDMX-Datei, wenn die Datenbank geändert wird
Klicken Sie im Modellbrowser mit der rechten Maustaste auf die EDMX-Datei für das Modell, und wählen Sie Modell aus der Datenbank aktualisieren aus.
Der Modellaktualisierungs-Assistent wird gestartet. Wenn keine Datenbankverbindung angegeben ist, wird das Dialogfeld Wählen Sie Ihre Datenverbindung aus angezeigt. Andernfalls wird das Dialogfeld Wählen Sie Ihre Datenbankobjekte aus angezeigt.
Wenn das Dialogfeld Wählen Sie Ihre Datenverbindung aus angezeigt wird, geben Sie eine Datenbankverbindung an. Fahren Sie andernfalls mit dem nächsten Schritt fort.
Ausführliche Informationen über das Angeben einer Verbindung finden Sie unter Wählen Sie Ihre Datenverbindung aus (Dialogfeld im Assistenten für Entity Data Model). Wenn Sie die Verbindung angegeben haben, klicken Sie auf Weiter, um das Dialogfeld Wählen Sie Ihre Datenbankobjekte aus anzuzeigen.
Klicken Sie auf die Registerkarte Hinzufügen.
Es werden Knoten für Tabellen, Sichten und gespeicherte Prozeduren angezeigt. Wenn Objekte der Datenbank hinzugefügt wurden oder im vorherigen Speichermodell nicht enthalten waren, können Sie den entsprechenden Knoten erweitern, um die Objekte anzuzeigen, die für das Einfügen in das konzeptionelle Modell verfügbar sind.
Hinweis: Wenn ein Objekt aus dem konzeptionellen Modell, nicht jedoch aus dem Speichermodell gelöscht wurde, ist das Objekt für das Einfügen in das konzeptionelle Modell nicht verfügbar.Weitere Informationen finden Sie unter Gewusst wie: Löschen von Objekten aus dem Speichermodell (Entity Data Model-Tools). Erweitern Sie die Knoten Tabellen, Sichten und Gespeicherte Prozeduren, und markieren Sie die Objekte, die Sie der EDMX-Datei hinzufügen möchten.
Klicken Sie auf die Registerkarte Aktualisieren.
Knoten für Tabellen, Sichten und gespeicherte Prozeduren, die im vorhandenen Speichermodell enthalten sind, werden angezeigt. Die Änderungen, die an diesen Datenbankobjekten vorgenommen wurden, spiegeln sich im aktualisierten Speichermodell wider. Änderungen am konzeptionellen Modell werden vorgenommen, wenn einer Tabelle oder einer Sicht Spalten hinzugefügt werden.
Klicken Sie auf die Registerkarte Löschen.
Knoten für Tabellen, Sichten und gespeicherte Prozeduren werden angezeigt. Wenn ein Objekt aus der Datenbank entfernt wurde oder im vorherigen Speichermodell enthalten war, können Sie den entsprechenden Knoten erweitern. Die Objekte in diesen Knoten werden aus dem aktualisierten Modell gelöscht.
Klicken Sie auf Fertig stellen, um die EDMX-Datei mit den Datenbankänderungen zu aktualisieren.
Hinweis: |
---|
Das konzeptionelle Modell wird nur für Objekte aktualisiert, die der Datenbank hinzugefügt werden.Andere Änderungen am konzeptionellen Modell müssen manuell vorgenommen werden.Informationen über das Aktualisieren des konzeptionellen Modells finden Sie unter Aufgaben der Entity Data Model-Tools. |
Siehe auch
Konzepte
ADO.NET Entity Data Model-Designer
Vom Modellaktualisierungs-Assistenten an einer EDMX-Datei vorgenommene Änderungen
Weitere Ressourcen
Aufgaben der Entity Data Model-Tools
Szenarien für die Verwendung der Entity Data Model-Tools