Wie werden die komprimierten Modelle in der Tabelle EF 4.3 Code First Migrations __MigrationHistory erstellt?

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

Frage

Ich arbeite mit Code-First-Migrationen (Entity Framework 4.3) und möchte eine komprimierte Binärversion des aktuellen Modells erhalten, damit ich es manuell mit dem neuesten Modell vergleichen kann, das in der gespeichert ist __MigrationHistory tabelle (oder zu einer, die ich in einer Textdatei gespeichert habe).

Da ist der EdmMetadata.TryGetModelHash() methode, aber das ist als veraltet markiert und ich möchte es nach Möglichkeit vermeiden (aus zukunftssicheren Gründen).

Wie würde ich das unter EF 4.3 machen?

Bearbeiten: Von etwas mehr Nachforschungen und den Infos in Pawels Antwort Ich habe herausgefunden, dass in diesem Feld kein Hash mehr gespeichert ist, sondern eine komprimierte Binärdarstellung des Modells.Das versuche ich zu erschaffen.

War es hilfreich?

Lösung

__MigrationHistory tabelle enthält keinen Hash des Modells mehr.Stattdessen enthält es jetzt das Modell in komprimierter Form.Um zu überprüfen, ob sich das Modell geändert hat oder nicht, muss nicht mehr nur der Hash verglichen werden, da Migrationen "wissen" müssen, was sich geändert hat und wie es sich geändert hat.

EdmMetadata war eine Tabelle, die vor der Integration von Migrationen in Entity Framowork in 4.3 / 5.0 verwendet wurde und nicht in Datenbanken erstellt wird, die mit EF 4.3+ erstellt wurden.Einige zusätzliche Details finden Sie auch hier: http://blog.oneunicorn.com/2012/01/13/ef-4-3-beta-1-what-happened-to-that-edmmetadata-table/

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