Пример #1
0
        /// <summary> Convert specified <paramref name="lockMode"/> to <seealso cref="global::NHibernate.LockMode"/>
        /// </summary>
        /// <param name="lockMode">lock mode</param>
        /// <returns><seealso cref="global::NHibernate.LockMode"/></returns>
        protected static global::NHibernate.LockMode GetLockMode(Itb.DalCore.LockMode lockMode)
        {
            global::NHibernate.LockMode nhibernateLockMode = global::NHibernate.LockMode.None;
            switch (lockMode)
            {
            case LockMode.None:
                nhibernateLockMode = global::NHibernate.LockMode.None;
                break;

            case LockMode.Read:
                nhibernateLockMode = global::NHibernate.LockMode.Read;
                break;

            case LockMode.Upgrade:
                nhibernateLockMode = global::NHibernate.LockMode.Upgrade;
                break;

            case LockMode.Force:
                nhibernateLockMode = global::NHibernate.LockMode.Force;
                break;

            case LockMode.UpgradeNoWait:
                nhibernateLockMode = global::NHibernate.LockMode.UpgradeNoWait;
                break;

            case LockMode.Write:
                nhibernateLockMode = global::NHibernate.LockMode.Write;
                break;

            default:
                //I18N
                throw new NotImplementedException($"Unknown NHibernate LockMode: {lockMode}");
            }
            return(nhibernateLockMode);
        }
Пример #2
0
 public virtual void Lock(T entity, Itb.DalCore.LockMode lockMode)
 {
     this.Session.Lock(entity, GetLockMode(lockMode));
 }
Пример #3
0
 public TImpl Load(ID id, Itb.DalCore.LockMode lockMode)
 {
     return(ExecInSessionRO <TImpl>(session => session.Load <TImpl>(id, GetLockMode(lockMode))));
 }
Пример #4
0
 public virtual TImpl Get(ID id, Itb.DalCore.LockMode lockMode)
 {
     return(ExecInSessionRO <TImpl>(session => session.Get <TImpl>(id, GetLockMode(lockMode))));
 }