Ich habe den folgenden sehr einfachen Komponententest, der einen Fall reproduziert, in dem DbContext.SaveChanges nicht atomar ist. Mit "nicht atomar" meine ich, dass die festgeschriebenen Daten gelesen werden können, bevor das gesamte Commit abgeschlossen wurde.
Aufgabe hinzufügen: Fügt in einer Schleife eine neue TestEntity und eine ReferencingEntity hinzu. Validate task: Prüft, ob es eine TestEntity gibt, auf die von keiner ReferencingEntity verwiesen wird - das sollte nicht passieren, weil ich die Entitäten hinzufüge.
Der Komponententest schlägt fehl ... irgendein Rat?
BEARBEITEN: Gemäß der akzeptierten Antwort - Um den Komponententest mit der vorgeschlagenen Lösung auszuführen, fügen Sie die InitTest-Methode hinzu:
%Vor%Komponententest:
%Vor%Versuchen Sie die Datenbankoption "Ist Read Commited Snapshot On" = True.
Wir hatten die gleichen Probleme. Diese Option löste sie.
Weitere Informationen zu:
und
Fügen Sie ein Objekt und seine Beziehungen atomar in SQL Server hinzu Datenbank
Tags und Links entity-framework dbcontext atomic ef-code-first