Example #1
0
 public ServiceBase(IConnectionManagerEx manager)
 {
     _Manager = manager;
     _Manager.TransactionOpened += new Action <DbTransaction>(manager_TransactionOpened);
     _Manager.TransactionClosed += new Action(manager_TransactionClosed);
     _Connection = _Manager.Connection;
 }
Example #2
0
        private T _CreateContext <T, TManager>(bool isData, bool readOnly = false)
            where T : DataContextEx
            where TManager : IConnectionManagerEx
        {
            IConnectionManagerEx manager = Host.Container.Resolve <TManager>();
            T result = default(T);

            if (manager.Transaction == null && readOnly)
            {
                result = Activator.CreateInstance(typeof(T), manager.Connection) as T;
                result.ObjectTrackingEnabled = false;
                manager.RegisterContext(result);
                return(result);
            }
            result             = Activator.CreateInstance(typeof(T), manager.Connection) as T;
            result.Transaction = manager.Transaction;
            manager.RegisterContext(result);
            return(result);
        }
Example #3
0
        private static T _CreateContext <T>(TargetDatabase database, bool readOnly = false) where T : DataContextEx
        {
            IConnectionManagerEx manager = null;

            switch (database)
            {
            case TargetDatabase.Data:
                manager = Host.Container.Resolve <IDataConnectionManager>();
                break;
            }
            T result = default(T);

            if (manager.Transaction == null && readOnly)
            {
                result = Activator.CreateInstance(typeof(T), manager.Connection) as T;
                result.ObjectTrackingEnabled = false;
                manager.RegisterContext(result);
                return(result);
            }
            result             = Activator.CreateInstance(typeof(T), manager.Connection) as T;
            result.Transaction = manager.Transaction;
            manager.RegisterContext(result);
            return(result);
        }
Example #4
0
 public DTServiceBase(IConnectionManagerEx manager, bool trackingEnabled = true) : base(manager, trackingEnabled)
 {
 }