mk-prg-net \net \ef6 \ConcurrencyException

Aktualisierungskonflikte auflösen

Änderungen an Entities werden durch Aufruf der Kontextmethode SaveChanges mit der Datenbank synchronisiert. Dabei kann es zu Konflikten kommen.

Wurden z.B. die auf Entities im Programm abgebildeten Daten parallel durch einen anderen User in der Datenbank geändert, dann schlägt der Aufruf von SaveChanges mit einer DbUpdateConcurrencyException fehl. SaveChanges vergleicht zu Beginn die im Entity gespeicherten Originalwerte mit den aktuellen Werten des Datensatzes. Stimmen diese nicht überein, dann ist die parallele Änderung der Daten erkannt und die Ausnahme wird geworfen. Der Programmierer kann in der Ausnahmebehandlung nun Maßnahmen ergreifen, um den Konflikt zu lösen.

Microsoft Doku zum Lösen von Aktualisierungskonflikten mit dem Entity Framework findet man hier.