Example #1
0
        /// <summary>
        /// 创建连接池.
        /// </summary>
        /// <remarks>
        /// isTrackerPool,isStoragePool不能同时为true或者false
        /// </remarks>
        public static void CreatePool(string storageName, DatabaseStyle dbStyle, int minSize, int maxSize)
        {
            switch (dbStyle)
            {
            case DatabaseStyle.MySql:
            {
                IConnectionPool pool =
                    new ConnectionPool <MySqlConnection>(new MySqlConnectionFactory(), minSize, maxSize);
                ConnectionPoolCached.InsertOrUpdate(storageName, pool);
                break;
            }

            case DatabaseStyle.Oracle:
            {
                IConnectionPool pool =
                    new ConnectionPool <OracleConnection>(new OracleConnectionFactory(), minSize, maxSize);
                ConnectionPoolCached.InsertOrUpdate(storageName, pool);
                break;
            }

            case DatabaseStyle.SqlServer:
            default:
            {
                IConnectionPool pool =
                    new ConnectionPool <SqlConnection>(new SqlServerConnectionFactory(), minSize, maxSize);
                ConnectionPoolCached.InsertOrUpdate(storageName, pool);
                break;
            }
            }
        }
Example #2
0
 public static IDbConnection GetDbConnection(DatabaseStyle dbStyle, string connectionString)
 {
     if (string.IsNullOrEmpty(connectionString))
     {
         if (null != connectionString)
             Logger.Warn("The database connectionString is empty.");
         throw new ArgumentNullException("connectionString");
     }
     try
     {
         switch (dbStyle)
         {
             case DatabaseStyle.MySql:
                 {
                     return new MySqlConnection(connectionString);
                 }
             case DatabaseStyle.Oracle:
                 {
                     return new OracleConnection(connectionString);
                 }
             case DatabaseStyle.SqlServer:
             default:
                 {
                     return new SqlConnection(connectionString);
                 }
         }
     }
     catch (Exception exc)
     {
         if (null != Logger)
             Logger.ErrorFormat("Create the connection is error.Message:{0}.", exc.Message);
         throw exc;
     }
 }
Example #3
0
 /// <summary>
 /// �������ӳ�.
 /// </summary>
 /// <remarks>
 /// isTrackerPool,isStoragePool����ͬʱΪtrue����false
 /// </remarks>
 public static void CreatePool(string storageName, DatabaseStyle dbStyle, int minSize, int maxSize)
 {
     switch (dbStyle)
     {
         case DatabaseStyle.MySql:
             {
                 IConnectionPool pool =
                     new ConnectionPool<MySqlConnection>(new MySqlConnectionFactory(), minSize, maxSize);
                 ConnectionPoolCached.InsertOrUpdate(storageName, pool);
                 break;
             }
         case DatabaseStyle.Oracle:
             {
                 IConnectionPool pool =
                     new ConnectionPool<OracleConnection>(new OracleConnectionFactory(), minSize, maxSize);
                 ConnectionPoolCached.InsertOrUpdate(storageName, pool);
                 break;
             }
         case DatabaseStyle.SqlServer:
         default:
             {
                 IConnectionPool pool =
                     new ConnectionPool<SqlConnection>(new SqlServerConnectionFactory(), minSize, maxSize);
                 ConnectionPoolCached.InsertOrUpdate(storageName, pool);
                 break;
             }
     }
 }
Example #4
0
        public static string GetParameterName(DatabaseStyle databaseStyle, string name)
        {
            if (string.IsNullOrEmpty(name))
            {
                if (null != name)
                {
                    Logger.Warn("The database parameter is empty.");
                }
                throw new ArgumentNullException("name");
            }
            switch (databaseStyle)
            {
            case DatabaseStyle.Oracle:
            {
                return(string.Format(":{0}", name));
            }

            case DatabaseStyle.MySql:
            case DatabaseStyle.SqlServer:
            default:
            {
                return(string.Format("@{0}", name));
            }
            }
        }
Example #5
0
        public static DbParameter GetDbParameter(DatabaseStyle databaseStyle, string name, DbType dbType, object value,
            int size)
        {
            if (string.IsNullOrEmpty(name))
            {
                if (null != name)
                    Logger.Warn("The database parameter is empty.");
                throw new ArgumentNullException("name");
            }
            switch (databaseStyle)
            {
                case DatabaseStyle.MySql:
                    {
                        DbParameter para = new MySqlParameter
                                               {
                                                   ParameterName = name,
                                                   Value = value
                                               };
                        if (DbType.AnsiString == dbType || DbType.AnsiStringFixedLength == dbType ||
                            DbType.String == dbType || DbType.StringFixedLength == dbType)
                        {
                            para.Size = size;
                        }

                        return para;
                    }
                case DatabaseStyle.Oracle:
                    {
                        DbParameter para = new OracleParameter
                                               {
                                                   ParameterName = name,
                                                   Value = value
                                               };
                        if (DbType.AnsiString == dbType || DbType.AnsiStringFixedLength == dbType ||
                            DbType.String == dbType || DbType.StringFixedLength == dbType)
                        {
                            para.Size = size;
                        }

                        return para;
                    }
                case DatabaseStyle.SqlServer:
                default:
                    {
                        DbParameter para = new SqlParameter
                                               {
                                                   ParameterName = name,
                                                   Value = value
                                               };
                        if (DbType.AnsiString == dbType || DbType.AnsiStringFixedLength == dbType ||
                            DbType.String == dbType || DbType.StringFixedLength == dbType)
                        {
                            para.Size = size;
                        }

                        return para;
                    }
            }
        }
Example #6
0
        public static IDbConnection GetDbConnection(DatabaseStyle dbStyle, string connectionString)
        {
            if (string.IsNullOrEmpty(connectionString))
            {
                if (null != connectionString)
                {
                    Logger.Warn("The database connectionString is empty.");
                }
                throw new ArgumentNullException("connectionString");
            }
            try
            {
                switch (dbStyle)
                {
                case DatabaseStyle.MySql:
                {
                    return(new MySqlConnection(connectionString));
                }

                case DatabaseStyle.Oracle:
                {
                    return(new OracleConnection(connectionString));
                }

                case DatabaseStyle.SqlServer:
                default:
                {
                    return(new SqlConnection(connectionString));
                }
                }
            }
            catch (Exception exc)
            {
                if (null != Logger)
                {
                    Logger.ErrorFormat("Create the connection is error.Message:{0}.", exc.Message);
                }
                throw exc;
            }
        }
Example #7
0
 public static string GetParameterName(DatabaseStyle databaseStyle, string name)
 {
     if (string.IsNullOrEmpty(name))
     {
         if (null != name)
             Logger.Warn("The database parameter is empty.");
         throw new ArgumentNullException("name");
     }
     switch (databaseStyle)
     {
         case DatabaseStyle.Oracle:
             {
                 return string.Format(":{0}", name);
             }
         case DatabaseStyle.MySql:
         case DatabaseStyle.SqlServer:
         default:
             {
                 return string.Format("@{0}", name);
             }
     }
 }
Example #8
0
        public static DbParameter GetDbParameter(DatabaseStyle databaseStyle, string name, DbType dbType, object value,
                                                 int size)
        {
            if (string.IsNullOrEmpty(name))
            {
                if (null != name)
                {
                    Logger.Warn("The database parameter is empty.");
                }
                throw new ArgumentNullException("name");
            }
            switch (databaseStyle)
            {
            case DatabaseStyle.MySql:
            {
                DbParameter para = new MySqlParameter
                {
                    ParameterName = name,
                    Value         = value
                };
                if (DbType.AnsiString == dbType || DbType.AnsiStringFixedLength == dbType ||
                    DbType.String == dbType || DbType.StringFixedLength == dbType)
                {
                    para.Size = size;
                }

                return(para);
            }

            case DatabaseStyle.Oracle:
            {
                DbParameter para = new OracleParameter
                {
                    ParameterName = name,
                    Value         = value
                };
                if (DbType.AnsiString == dbType || DbType.AnsiStringFixedLength == dbType ||
                    DbType.String == dbType || DbType.StringFixedLength == dbType)
                {
                    para.Size = size;
                }

                return(para);
            }

            case DatabaseStyle.SqlServer:
            default:
            {
                DbParameter para = new SqlParameter
                {
                    ParameterName = name,
                    Value         = value
                };
                if (DbType.AnsiString == dbType || DbType.AnsiStringFixedLength == dbType ||
                    DbType.String == dbType || DbType.StringFixedLength == dbType)
                {
                    para.Size = size;
                }

                return(para);
            }
            }
        }