Ich habe kürzlich mit Entity Framework 4.1 Code First programmiert und bin begeistert von der Entwicklung, aber mit nur einem End-Plan und einer sich schnell ändernden Feature-Liste ändere ich die Klasse / Datenbank ständig, um die Anforderungen der Anwendungen zu erfüllen.
In der Entwicklung gibt es keine Live-Daten, und ich kann einfach die gesamte Datenbank löschen, damit sie mit dem neuen Schema wiederhergestellt wird. Dies ist jedoch offensichtlich sehr schlecht, wenn sie live ist.
Die einzigen Lösungen, die ich sehen kann, sind entweder das Löschen der Metadatentabelle und das manuelle Synchronisieren der Datenbank oder das Löschen und erneute Einlesen.
Ich persönlich bevorzuge die erste Methode, da es meiner Meinung nach viel einfacher ist, eine Spalte / Tabelle hinzuzufügen, als Daten neu zu erstellen und zu migrieren. Wenn ich jedoch etwas verpasst habe, ist dies eine völlige Abkehr von Code First.
Die Frage ist also wirklich: Geht es bei Code First nur um die anfängliche Entwicklung und was ist eine gute Strategie zum Verwalten von EF für eine Produktionsumgebung?