Exemplo n.º 1
0
        /// <summary>
        /// 获取当前正在使用的数据库.
        /// </summary>
        /// <returns></returns>
        private string GetUsingDatabase()
        {
            DatabaseCollection dbCollection = httpContext.RequestServices.GetService(typeof(DatabaseCollection)) as DatabaseCollection;

            if (dbCollection == null)
            {
                return(string.Empty);
            }
            return(dbCollection.CurrentDbType);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 配置数据库.
        /// </summary>
        /// <param name="services"></param>
        private void ConfigureDatabase(IServiceCollection services)
        {
            DatabaseCollection    database = new DatabaseCollection();
            IConfigurationSection section  = Configuration.GetSection("Database").GetSection("SQLServer");

            database.UseSqlserver(section.GetValue <string>("ConnectionString"), section.GetValue <int>("ConnectionPool", 0));

            section = Configuration.GetSection("Database").GetSection("MySQL");
            database.UseMySql(section.GetValue <string>("ConnectionString"), section.GetValue <int>("ConnectionPool", 0));

            section = Configuration.GetSection("Database").GetSection("PostgreSQL");
            database.UsePostgreSQL(section.GetValue <string>("ConnectionString"), section.GetValue <int>("ConnectionPool", 0));

            section = Configuration.GetSection("Database").GetSection("SQLite3");
            string sqliteConnectionString = section.GetValue <string>("ConnectionString");

            sqliteConnectionString = sqliteConnectionString.Replace("{contentroot}", hostEnvironment.ContentRootPath);
            database.UseSQLite3(sqliteConnectionString);
            database.SetActive("sqlite3");

            services.AddSingleton <DatabaseCollection>(database);
        }