2010-06-16 12 views
5

Ich habe ein Entity Framework 4-Modell mit Visual Studio 2010 erstellt und daraus eine Datenbank generiert. Nun habe ich neue Eigenschaften hinzugefügt (mit Standardwerten), die Dokumentation der Spalten geändert, die Namen der Spalten geändert und die Arten der Spalten mehrmals geändert. Alle Aufgaben, die nicht viel "Extraarbeit" erfordern, um nicht automatisch (meiner bescheidenen Meinung nach) erreicht zu werden. Jedes Mal, wenn ich "Database from Model" erstellte, verlor ich natürlich die Tabellendaten.Entity Framework: "Datenbank von Model aktualisieren" anstelle von "Datenbank aus Modell generieren"

Gibt es einen Weg, nur um die Architektur der Datenbank zu aktualisieren - so dass die Tabelle Daten unberührt bleiben? Vielleicht mit einer Benutzerinteraktion, vor allem beim Wechsel von Typen etc.? Oder wäre diese Funktionalität einfach zu schwer zu realisieren, um zuverlässig zu funktionieren?

Vielen Dank im Voraus! Cheers, David

+1

Was Sie sehen: "Ich ändere nur den Namen dieser beiden Eigenschaften. Sie sind in der gleichen Reihenfolge, und ihre Namen bedeuten ungefähr die gleiche Sache, aber das ist besser". Was Visual Studio sieht: "Es gab ein Objekt mit diesen fünf Eigenschaften, und jetzt gibt es ein Objekt mit diesen fünf Eigenschaften. Drei von ihnen sind gleich". Wie können Sie erwarten, dass VS Ihnen sagen wird, welche von ihnen welche sind oder ob sie geändert wurden und nicht neu? –

+1

Nur ein Vorschlag .... Ich erstelle normalerweise die Datenbank und aktualisiere dann das Modell von der DB. Der Grund dafür ist, dass ich eine Datenbank namens ApplicationModelDB und eine andere namens ApplicationDB erstelle. Die applicationModelDB hat keine Daten, aber hier mache ich meine Updates. Sobald ich die Entity XML und DB, wie ich es will, bekomme ich meine DB-Skripte auf meine Anwendung DB. Dies führt zu zwei Dingen. Ich kann meinen SQL verfolgen, der notwendig ist, um eine Datenbank zu erstellen/zu aktualisieren oder zu einer älteren Version zurückzukehren. UND es erlaubt mir, die seltsamen Macken des Entity Framework Designers zu verwalten. –

+0

Duplikat von http://stackoverflow.com/questions/3144117/entity-framework-4-update-database-schema-from-model-without-wiping-the-table. –

Antwort

5

Noam Ben-Ami - MSFT1 (Microsoft Employee) beantwortet bei http://social.msdn.microsoft.com/Forums/en-us/adodotnetentityframework/thread/3adc080f-ee8c-4104-be29-95b2fb3fabe9 meine Frage wie folgt:

Wir haben die Einheit Designer Datenbank Netzteil zu bauen, dies zu unterstützen. Sie können es hier herunterladen: http://visualstudiogallery.msdn.microsoft.com/en-us/df3541c3-d833-4b65-b942-989e7ec74c87

Es enthält einen Workflow zur Datenbankgenerierung für den Designer, der Migration statt Drop/Create durchführt.

Dieser Beitrag wird "wie besehen" ohne Gewährleistungen zur Verfügung gestellt und gewährt keine Rechte.

Ich habe das Tool noch nicht getestet, aber ich denke, dass die Informationen auch für andere wertvoll sein können.

Verwandte Themen