/// <summary>
        /// Executes some work in isolation.
        /// </summary>
        /// <param name="session">The NHibernate session</param>
        /// <param name="work">The work to execute</param>
        /// <param name="transacted">Whether or not to wrap the work in a transaction</param>
        public new void ExecuteWorkInIsolation(ISessionImplementor session, IIsolatedWork work, bool transacted)
        {
            var connection = (ReliableSqlDbConnection)session.Connection;

            ReliableAdoTransaction.ExecuteWithRetry(connection,
                                                    () => base.ExecuteWorkInIsolation(session, work, transacted)
                                                    );
        }
示例#2
0
        protected override void DoExecuteBatch(DbCommand ps)
        {
            var connection = (ReliableSqlDbConnection)_connectionManager.GetConnection();

            ReliableAdoTransaction.ExecuteWithRetry(connection, () => ExecuteBatch(ps));
        }