From 4cc8b0b84469d07fc9ad626fb4d3c2303a7e830f Mon Sep 17 00:00:00 2001 From: "454313500@qq.com" <454313500@qq.com> Date: Sat, 3 Apr 2021 13:18:01 +0800 Subject: [PATCH] v1.1.0 --- CC.Yi.DALFactory/DbSession.cs | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/CC.Yi.DALFactory/DbSession.cs b/CC.Yi.DALFactory/DbSession.cs index 71b38475..b6de042d 100644 --- a/CC.Yi.DALFactory/DbSession.cs +++ b/CC.Yi.DALFactory/DbSession.cs @@ -10,7 +10,31 @@ namespace CC.Yi.DALFactory { public int SaveChanges() { - return DbContentFactory.GetCurrentDbContent().SaveChanges(); + var context = DbContentFactory.GetCurrentDbContent(); + + var saved = false; + while (!saved) + { + try + { + // Attempt to save changes to the database + context.SaveChanges(); + saved = true; + } + catch (DbUpdateConcurrencyException ex) + { + foreach (var entry in ex.Entries) + { + var databaseValues = entry.GetDatabaseValues(); + + // Refresh original values to bypass next concurrency check + entry.OriginalValues.SetValues(databaseValues); + + } + } + } + + return 1; } public DataContext GetDbContent() {