/// <summary>
 /// 添加数据库信息
 /// </summary>
 /// <param name="dataBaseInfo"></param>
 /// <returns></returns>
 public static bool AddDataBaseInfo(DataBaseInfoEntity dataBaseInfo)
 {
     T8Config.DataBaseInfo = dataBaseInfo;
     if (SerializableHelper <T8ConfigEntity> .BinarySerializeFile(_T8ConfigFilePath, T8Config))
     {
         return(true);
     }
     return(false);
 }
        public static IDatabase CreateDatabase(DataBaseInfoEntity dataBaseInfo)
        {
            switch (dataBaseInfo.DataBaseType)
            {
            case DatabaseType.SqlServer:
                return(CreateDatabaseInstance(typeof(SqlServerDatabase), dataBaseInfo));

            case DatabaseType.MySQL:
                return(CreateDatabaseInstance(typeof(MySqlDatabase), dataBaseInfo));

            case DatabaseType.Oracle:
                return(CreateDatabaseInstance(typeof(OracleDatabase), dataBaseInfo));

            default:
                throw new Exception("Unsupported database type!");
            }
        }
Example #3
0
        public IDataBaseInfo GetDatabaseStatus()
        {
            var dbInfo = new DataBaseInfoEntity();

            if (Database.Server.State != MongoServerState.Connected)
            {
                dbInfo.Online = false;
            }
            else
            {
                dbInfo.Online = true;
            }

            dbInfo.Name   = Database.Name;
            dbInfo.Server = Database.Server.Settings.Server.Host + ":" + Database.Server.Settings.Server.Port;

            return(dbInfo);
        }
        /// <summary>
        /// 创建数据库对象
        /// </summary>
        /// <param name="dbType"></param>
        /// <param name="dataBaseInfo"></param>
        /// <returns></returns>
        private static IDatabase CreateDatabaseInstance(Type dbType, DataBaseInfoEntity dataBaseInfo)
        {
            if (dataBaseInfo == null)
            {
                return(null);
            }

            string connString = DataBaseHelper.CreateConnectionString(dataBaseInfo);

            ConstructorInfo constructor = dbType.GetConstructor(Type.EmptyTypes);

            if (constructor == null)
            {
                return(null);
            }
            IDatabase database = constructor.Invoke(null) as IDatabase;

            if (database != null && !string.IsNullOrEmpty(connString))
            {
                database.ConnectionString = connString;
            }

            return(database);
        }
Example #5
0
 public static string CreateConnectionString(DataBaseInfoEntity dataBaseInfo)
 {
     return(CreateConnectionString(dataBaseInfo.DataBaseType, dataBaseInfo.ServerName, dataBaseInfo.ServerName, dataBaseInfo.UserName, dataBaseInfo.UserPassword));
 }