EF Migrations - Vorhandene Datenbank, die jedoch von Grund auf neu bereitgestellt werden soll

StackOverflow https://stackoverflow.com//questions/11664346

  •  11-12-2019
  •  | 
  •  

Frage

Ich habe eine vorhandene Entwicklungsdatenbank mit Schema und Daten.Ich habe die Klassen mit dem Microsoft-Dienstprogramm (CodeFirst classes) erstellt.Ich habe dann Migrationen aktiviert.

Jetzt bin ich verwirrt über das Verhalten von -IgnoreChanges .Was passiert, wenn die anfängliche Migration keine Up () - und keine Down () -Logik enthält, wenn ich sie in einer Produktdatenbank bereitstelle?

Ignoriert EF einfach alle Migrationen und erstellt einfach von Grund auf direkt aus dem Modell?

Wenn ich keine -IgnoreChanges einfüge, ist die gesamte Up () - und Down () -Logik vorhanden.Bei der Aktualisierung der Datenbank wird jedoch eine Ausnahme für eine Tabelle mit demselben Namen ausgelöst, die bereits vorhanden ist.

Ich benutze EF 5 RC.

War es hilfreich?

Lösung

IgnoreChanges ist für Szenarien gedacht, in denen Sie eine vorhandene Anwendung (sowohl in dev als auch in prod) haben und Migrationen verwenden möchten. IgnoreChanges werden vereinfachen Sie das Hinzufügen der Erstmigration in die vorhandene Datenbank.Wenn Sie sich in einem Szenario befinden, in dem keine Produktionsdatenbank vorhanden ist, können Sie Änderungen ignorieren nicht verwenden.

Die einfache Option für Ihren Fall besteht darin, Entitäten aus einer vorhandenen Datenbank zu erstellen und weiterhin an einer anderen Datenbank zu arbeiten, die durch Ihre Migration aus diesen Entitäten erstellt wurde, da Sie für alle diese Entitäten in Tabellenerstellung benötigen Up methode (und Down verfahren jeweils).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top