Entity Framework Code Zuerst: SaveChanges ist nicht atomar

8

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%     
Ohad Meir 22.05.2013, 13:51
quelle

1 Antwort

6

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

    
sthiers 11.06.2013, 07:50
quelle