Verwenden von Migrationen mit Effort.EF6?

.net c# effort entity-framework-6

Frage

Ich benutze EF6 und ich mache jetzt einige Tests für meine Aggregate. Ich habe mich dafür entschieden, Effort.EF6 zu verwenden, da ich diese Tests gerne ausführen lassen möchte, ohne eine komplette Datenbank-Engine installieren zu müssen.

Mein DbContext verwendet Migrationen und eine Seeding-Methode, die einige Daten einfügt. Kann Effort.EF6 das nutzen oder sollte ich die Methoden von Effort zum Seeding verwenden?

Beliebte Antwort

Die Migrationen erfolgen automatisch. Ich rufe die normale Kontext-Startmethode auf, wenn ich Daten mit Daten füllen muss. Beachten Sie, dass Sie abhängig vom Umfang Ihres Kontextes (pro Test oder pro Testassembly) möglicherweise viele und viele Abfragen ausführen, um Ihre Seeding durchzuführen. Dies hat sowohl Auswirkungen auf die Leistung als auch auf das Debugging, da Seeding-Bugs in Ihren Tests als Bugs angezeigt werden und jede Protokollierung während des Seedings als Teil jedes Tests protokolliert wird.

var connection = Effort.DbConnectionFactory.CreateTransient();
var context = new DbContext(connection);
context.Seed();



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum