Esempio n. 1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SaveAuditor"/> class.
        /// </summary>
        /// <param name="adapter">The adapter.</param>
        public SaveAuditor(DataClassAdapter adapter)
        {
            _adapter = adapter;

            _saveHandler         = OnBeforeSave;
            _adapter.BeforeSave += _saveHandler;
        }
Esempio n. 2
0
        protected void Dispose(bool disposing)
        {
            if (_adapter != null)
            {
                lock (this)
                    if (_adapter != null)
                    {
                        _adapter.BeforeSave -= _saveHandler;
                        _adapter             = null;
                    }
            }

            if (disposing)
            {
                GC.SuppressFinalize(this);
            }
        }
        /// <summary>
        /// Gets a DataClassAdapter of type Tdc.
        /// </summary>
        /// <typeparam name="Tdc">DC type</typeparam>
        /// <returns></returns>
        public virtual DataClassAdapter <Tdc> Adapter <Tdc>()
            where Tdc : class, new()
        {
            if (_adapters.ContainsKey(typeof(Tdc)))
            {
                return((DataClassAdapter <Tdc>)_adapters[typeof(Tdc)]);
            }

            lock (this)
            {                   // double-check after lock (be thread safe, sort of)
                if (_adapters.ContainsKey(typeof(Tdc)))
                {
                    return((DataClassAdapter <Tdc>)_adapters[typeof(Tdc)]);
                }

                var adapter = new DataClassAdapter <Tdc>(Connection);
                _adapters.Add(typeof(Tdc), adapter);

                return(adapter);
            }
        }
Esempio n. 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SaveAuditor"/> class.
 /// </summary>
 /// <param name="adapter">The adapter.</param>
 /// <param name="auditHandler">The audit handler.</param>
 public SaveAuditor(DataClassAdapter adapter, Action <SaveAudit> auditHandler)
     : this(adapter)
 {
     AuditHandler = auditHandler;
 }
Esempio n. 5
0
 public static T[] GetArray <T>(this DataClassAdapter <T> adapter, string filter, params object[] parameters)
     where T : class
 {
     using (var reader = adapter.OpenReader(filter, parameters))
         return(reader.ToArray());
 }
Esempio n. 6
0
 public static T[] GetArray <T>(this DataClassAdapter <T> adapter, Expression <Func <T, bool> > filterExpression)
     where T : class
 {
     using (var reader = adapter.OpenReader(filterExpression))
         return(reader.ToArray());
 }