Files
Yi.Framework/CC.Yi.DALFactory/DbSession.cs
454313500@qq.com 7e73d35bd2 v1.1.5
2021-04-16 19:21:56 +08:00

46 lines
1.1 KiB
C#

using CC.Yi.DAL;
using CC.Yi.IDAL;
using CC.Yi.Model;
using Microsoft.EntityFrameworkCore;
using System;
namespace CC.Yi.DALFactory
{
public partial class DbSession : IDbSession
{
public int 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()
{
return DbContentFactory.GetCurrentDbContent();
}
}
}