Пример #1
0
        //   public readonly string ConnectionStringLocalTransaction = ConfigurationManager.ConnectionStrings["ConnOracleWithAddress"] == null ? "Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 180.166.173.214)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = dswms)));Persist Security Info=True;User ID=c##dswms;Password=c##dswms;" : ConfigurationManager.ConnectionStrings["ConnOracleWithAddress"].ConnectionString;//防止空引用异常 modify by gzw 181227

        /// <summary>
        /// 数据库工厂构造函数
        /// </summary>
        /// <param name="dbtype">数据库枚举</param>
        public DbFactory(DbFactoryType dbtype)
        {
            switch (dbtype)
            {
            case DbFactoryType.SQLSERVER:
                dbF = new SqlServerFactory
                {
                    ConnStr = ConnectionStringLocalTransaction
                };    // 数据库连接字符
                //SqlConnection connection = (SqlConnection)dbF.CreateConnection();
                //SqlBulkCopy
                //connection.BulkCopy
                break;

            case DbFactoryType.ROACLE:
                dbF = new OracleFactory
                {
                    ConnStr = ConnectionStringLocalTransaction
                };
                break;

            case DbFactoryType.MYSQL:
                dbF = new MySqlFactory
                {
                    ConnStr = ConnectionStringLocalTransaction
                };

                MySqlConnection connection = (MySqlConnection)dbF.CreateConnection();

                break;
            }
        }
Пример #2
0
        // Return a singleton instance of a vendor specific db factory
        // Abstract factory design pattern.
        public static IDbFactory GetFactory(DbFactoryType factoryType)
        {
            switch (factoryType)
            {
            case DbFactoryType.SqlClient:
            {
                return(DbSingletonFactorySqlClient.Instance);
            }

            case DbFactoryType.Oracle:
            {
                return(DbSingletonFactoryOracle.Instance);
            }

            case DbFactoryType.Odbc:
            {
                return(DbSingletonFactoryOdbc.Instance);
            }

            case DbFactoryType.OleDb:
            {
                return(DbSingletonFactoryOleDb.Instance);
            }

            case DbFactoryType.MySql:
            {
                return(DbSingletonFactoryMySql.Instance);
            }
            }
            return(null);
        }