public virtual void Save(IReadOnlyCollection <T> objs) { if (objs.Count == 0) { return; } foreach (T obj in objs) { BeginSaveCallback?.Invoke(obj); } lock (globalDBLock) { using (var session = DatabaseFactory.SessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { foreach (T obj in objs) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); lock (Cache) { Cache.Update(obj); } } transaction.Commit(); } } } foreach (T obj in objs) { EndSaveCallback?.Invoke(obj); } }
public virtual void Save(List <T> objs) { if (objs.Count == 0) { return; } foreach (T obj in objs) { BeginSaveCallback?.Invoke(obj); } using (var session = JMMService.SessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { foreach (T obj in objs) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session, obj); } transaction.Commit(); } } foreach (T obj in objs) { EndSaveCallback?.Invoke(obj); } }
//This function do not run the BeginDeleteCallback and the EndDeleteCallback public virtual void SaveWithOpenTransaction(ISession session, List <T> objs) { if (objs.Count == 0) { return; } foreach (T obj in objs) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); } }
//This function do not run the BeginDeleteCallback and the EndDeleteCallback public virtual void SaveWithOpenTransaction(ISessionWrapper session, T obj) { if (Equals(SelectKey(obj), default(S))) { session.Insert(obj); } else { session.Update(obj); } SaveWithOpenTransactionCallback?.Invoke(session, obj); Cache.Update(obj); }
public virtual void Save(T obj) { BeginSaveCallback?.Invoke(obj); using (var session = DatabaseFactory.SessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); transaction.Commit(); } } EndSaveCallback?.Invoke(obj); }
//This function do not run the BeginDeleteCallback and the EndDeleteCallback public virtual void SaveWithOpenTransaction(ISession session, T obj) { lock (globalDBLock) { lock (obj) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); lock (Cache) { Cache.Update(obj); } } } }
public virtual void Save(T obj) { BeginSaveCallback?.Invoke(obj); using (var session = JMMService.SessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { SaveWithOpenTransactionCallback?.Invoke(session, obj); session.SaveOrUpdate(obj); transaction.Commit(); } } Cache.Update(obj); EndSaveCallback?.Invoke(obj); }
//This function do not run the BeginDeleteCallback and the EndDeleteCallback public void SaveWithOpenTransaction(ISession session, List <T> objs) { if (objs.Count == 0) { return; } lock (globalDBLock) { foreach (T obj in objs) { lock (obj) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); Cache.Update(obj); } } } }
public virtual void Save(T obj) { BeginSaveCallback?.Invoke(obj); lock (globalDBLock) { lock (obj) { using (var session = DatabaseFactory.SessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); session.SaveOrUpdate(obj); transaction.Commit(); } } lock (Cache) { Cache.Update(obj); } } } EndSaveCallback?.Invoke(obj); }
//This function do not run the BeginDeleteCallback and the EndDeleteCallback public virtual void SaveWithOpenTransaction(ISession session, T obj) { session.SaveOrUpdate(obj); SaveWithOpenTransactionCallback?.Invoke(session.Wrap(), obj); Cache.Update(obj); }