public IEnumerable <object> Select(DbConnectionContext dbConnectionContext, SqlCommandDescription sqlCommand, Type entityType)
        {
            DapperParameters parameters = new DapperParameters(sqlCommand);

            return(dbConnectionContext.DbConnection
                   .Query(entityType, sqlCommand.SqlCommand, parameters, transaction: dbConnectionContext.DbTransaction));
        }
        public int Execute(DbConnectionContext dbConnectionContext, SqlCommandDescription sqlCommand)
        {
            DapperParameters parameters = new DapperParameters(sqlCommand);

            return(dbConnectionContext.DbConnection
                   .Execute(sqlCommand.SqlCommand, parameters, transaction: dbConnectionContext.DbTransaction));
        }
Esempio n. 3
0
        public IEnumerable <T> GetAllWithParam <T>(string sql, string connectionsName, IEnumerable <dynamic> parameters) where T : class
        {
            DbConnectionContext = DbConnectionFactory.CreateDbConnection(connectionsName);
            var retorno = DbConnectionContext.Query <T>(sql, GetDynamicParameters(parameters));

            return(retorno);
        }
        public static DbConnectionContext GetLoggedDbConnection(DbConnection connection)
        {
            var context = new DbConnectionContext
            {
                IsAsync           = false,
                IsCanceled        = false,
                Exception         = null,
                ConnectionString  = connection.ConnectionString,
                ObjectContextId   = SessionIdLoggingContext.SessionId.GetUniqueId(),
                ObjectContextName = SessionId,
                ConnectionId      = UniqueIdExtensions <DbConnection> .GetUniqueId(connection).ToInt()
            };

            return(context);
        }
        public void DoTask(IUserDao userDao, Dictionary <string, object> context)
        {
            DbConnectionContext ctx = (DbConnectionContext)context[Constant.CONTEXT_KEY_DB_CONTEXT];
            User user = User.New();

            using (var tran = ctx.DbConnection.BeginTransaction())
            {
                userDao.Insert(user);
                tran.Rollback();
            }

            User user2 = userDao.SelectById(user.Id);

            Checker.IsNull(user2);
        }
        public static DbConnectionContext GetLoggedDbConnection(DbConnection connection, MutableInterceptionContext interceptionContext)
        {
            var context = new DbConnectionContext
            {
                IsAsync          = interceptionContext.IsAsync,
                IsCanceled       = interceptionContext.TaskStatus.HasFlag(TaskStatus.Canceled),
                Exception        = interceptionContext.OriginalException ?? interceptionContext.Exception,
                ConnectionString = connection.ConnectionString
            };

            setBaseInfo(interceptionContext, context);
            if (context.ConnectionId == null)
            {
                context.ConnectionId = UniqueIdExtensions <DbConnection> .GetUniqueId(connection).ToInt();
            }
            return(context);
        }
Esempio n. 7
0
        public IEnumerable <object> Select(DbConnectionContext dbConnectionContext, SqlCommandDescription sqlCommand, Type entityType)
        {
            if (sqlCommand.SqlCommand.Contains("COUNT"))
            {
                return new List <object>()
                       {
                           100
                       }
            }
            ;


            return(new List <object>()
            {
                Activator.CreateInstance(entityType), Activator.CreateInstance(entityType)
            });
        }
    }
        public static DbConnectionContext GetLoggedDbConnection(IDbConnection connection, BeginTransactionInterceptionContext interceptionContext)
        {
            var context = new DbConnectionContext
            {
                IsAsync          = interceptionContext.IsAsync,
                IsCanceled       = interceptionContext.TaskStatus.HasFlag(TaskStatus.Canceled),
                Exception        = interceptionContext.OriginalException ?? interceptionContext.Exception,
                ConnectionString = connection.ConnectionString,
                TransactionId    =
                    interceptionContext.Result == null
                        ? (int?)null
                        : UniqueIdExtensions <DbTransaction> .GetUniqueId(interceptionContext.Result).ToInt(),
                IsolationLevel =
                    interceptionContext.Result == null ? IsolationLevel.Unspecified : interceptionContext.Result.IsolationLevel
            };

            setBaseInfo(interceptionContext, context);
            return(context);
        }
        public static DbConnectionContext GetLoggedDbConnection(ProfiledDbTransaction interceptionContext, int connectionId)
        {
            var context = new DbConnectionContext
            {
                IsAsync          = false,
                IsCanceled       = false,
                Exception        = null,
                ConnectionString = interceptionContext.Connection.ConnectionString,
                TransactionId    =
                    interceptionContext.InnerTransaction == null
                        ? (int?)null
                        : UniqueIdExtensions <DbTransaction> .GetUniqueId(interceptionContext.InnerTransaction).ToInt(),
                IsolationLevel    = interceptionContext.IsolationLevel,
                ObjectContextId   = SessionIdLoggingContext.SessionId.GetUniqueId(),
                ObjectContextName = SessionId,
                ConnectionId      = connectionId
            };

            return(context);
        }
Esempio n. 10
0
        public void DoTask(IUserDao userDao, Dictionary <string, object> context)
        {
            DbConnectionContext ctx = (DbConnectionContext)context[Constant.CONTEXT_KEY_DB_CONTEXT];

            User user = User.New();

            using (var tran = ctx.DbConnection.BeginTransaction())
            {
                userDao.Insert(user);
                tran.Commit();
            }

            User user2 = userDao.SelectById(user.Id);

            Checker.IsNotNull(user2);
            Checker.Equals(user.Id, user2.Id);
            Checker.Equals(user.Name, user2.Name);
            Checker.Equals(user.LoginName, user2.LoginName);
            Checker.Equals(user.Password, user2.Password);
        }
Esempio n. 11
0
 public IEnumerable <T> GetAll <T>(string sql, string connectionsName) where T : class
 {
     DbConnectionContext = DbConnectionFactory.CreateDbConnection(connectionsName);
     return(DbConnectionContext.Query <T>(sql));
 }
Esempio n. 12
0
 public IEnumerable <TEntity> GetAll(string sql, string connectionsName)
 {
     DbConnectionContext = DbConnectionFactory.CreateDbConnection(connectionsName);
     return(DbConnectionContext.Query <TEntity>(sql));
 }
Esempio n. 13
0
 public int Execute(DbConnectionContext dbConnectionContext, SqlCommandDescription sqlCommand)
 {
     Console.WriteLine(sqlCommand.ToString());
     return(10);
 }
Esempio n. 14
0
 public FavoritController(DbConnectionContext context)
 {
     this._context = context;
 }
Esempio n. 15
0
 public CategoryController(DbConnectionContext context)
 {
     this._context = context;
 }
Esempio n. 16
0
 public SqlServerDbConnectionContextProvider(SqServerConfig config)
 {
     this.config              = config;
     this.sqlConnection       = new SqlConnection(config.ConnectionString);
     this.dbConnectionContext = new DbConnectionContext(this.sqlConnection);
 }
Esempio n. 17
0
 public PriceController(DbConnectionContext context)
 {
     this._context = context;
 }
Esempio n. 18
0
 public OrderController(DbConnectionContext context)
 {
     this._context = context;
 }
Esempio n. 19
0
 public DbConnectionContextProvider()
 {
     this.dbConnectionContext = new DbConnectionContext(new TestConnection());
 }
Esempio n. 20
0
        static void Main(string[] args)
        {
            List <ITask> tasks = new List <ITask>();

            foreach (var type in typeof(ITask).Assembly.GetTypes())
            {
                if (!typeof(ITask).IsAssignableFrom(type))
                {
                    continue;
                }

                if (type.IsAbstract)
                {
                    continue;
                }
                if (type.IsInterface)
                {
                    continue;
                }

                tasks.Add((ITask)Activator.CreateInstance(type));
            }


            SQLiteConnectionStringBuilder connectionStringBuilder = new SQLiteConnectionStringBuilder();

            connectionStringBuilder.DataSource = ".\\data\\app.db";
            using (SQLiteConnection conn = new SQLiteConnection(connectionStringBuilder.ToString()))
            {
                conn.Open();
                DbConnectionContext ctx         = new DbConnectionContext(conn);
                INPIImplementer     implementer = new NPIImplementer(ctx);

                IUserDao userDao = implementer.Implement <IUserDao>();

                Dictionary <string, object> context = new Dictionary <string, object>();
                context[Constant.CONTEXT_KEY_DB_CONTEXT] = ctx;

                userDao.Delete();

                foreach (var task in tasks)
                {
                    Console.Write("{0} : ", task.TaskName);
                    DebugLogger.Debug($"开始任务 : {task.TaskName}");
                    DateTime d1 = DateTime.Now;
                    try
                    {
                        task.DoTask(userDao, context);
                        DateTime d2 = DateTime.Now;
                        Console.WriteLine("SUCCESS\t{0} ms", (d2 - d1).Milliseconds);
                    }
                    catch (Exception ex)
                    {
                        DateTime d2 = DateTime.Now;
                        Console.WriteLine("Error\t{0} ms", (d2 - d1).Milliseconds);
                        Console.WriteLine(ex.ToString());
                        break;
                    }
                }
            }
            Console.WriteLine("Finished");
            Console.ReadLine();
        }
Esempio n. 21
0
 public DiscountController(DbConnectionContext context)
 {
     this._context = context;
 }