/// <summary>
        /// 添加数据库服务
        /// </summary>
        /// <param name="services"></param>
        /// <param name="Configuration"></param>
        public static void AddEvolutionDBService(this IServiceCollection services, EvolutionPluginManager manager, IConfigurationRoot Configuration)
        {
            string DataBase = Configuration["DataBase"];

            if (DataBase.ToLower() == "sqlserver")
            {
                services.AddEntityFramework()
                .AddDbContext <EvolutionDBContext>(options =>
                {
                    options.UseSqlServer(
                        GetDbConnection(Configuration, DataBase),
                        b => b.UseRowNumberForPaging()
                        );
                });
            }
            else if (DataBase.ToLower() == "mysql")
            {
                services.AddEntityFramework()
                .AddDbContext <EvolutionDBContext>(options =>
                {
                    options.UseMySQL(
                        GetDbConnection(Configuration, DataBase)
                        );
                });
            }
        }
Ejemplo n.º 2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            pluginManager = new EvolutionPluginManager(_hostingEnvironment, services);

            services.AddApplicationInsightsTelemetry(Configuration);
            //mvc
            var mvcBuilder = services.AddEvolutionMVCService();

            //加载插件
            GloableConfiguration.PluginAssemblies = pluginManager.LoadPluginAssembly(mvcBuilder);
            //cache
            services.AddEvolutionCacheService(Configuration);
            //session
            services.AddSession((SessionOptions options) =>
            {
                options.IdleTimeout = TimeSpan.FromMinutes(30);
                options.CookieName  = ".MyApplication";
            });

            //database
            services.AddEvolutionDBService(pluginManager, Configuration);
            //plugins injection entityframework and service dependency
            pluginManager.AddPluginEFService(Configuration);
            //inject
            services.InjectEvolutionDependency();
            pluginManager.InjectEvolutionDependency();
        }
Ejemplo n.º 3
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            pluginManager = new EvolutionPluginManager(_hostingEnvironment, services);

            services.AddApplicationInsightsTelemetry(Configuration);

            //mvc
            var mvcBuilder = services.AddEvolutionMVCService();

            //配置跨域
            services.AddCors();

            //加载插件
            GloableConfiguration.PluginAssemblies = pluginManager.LoadPluginAssembly(mvcBuilder);
            //cache
            services.AddEvolutionCacheService(Configuration);

            //database
            services.AddEvolutionDBService(pluginManager, Configuration);
            //plugins injection entityframework and service dependency
            pluginManager.AddPluginEFService(Configuration);
            //inject
            services.InjectEvolutionDependency();
            pluginManager.InjectEvolutionDependency();
        }
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.AddConfiguration(new ItemsDetailEFConfiguration());
            modelBuilder.AddConfiguration(new ItemsEFConfiguration());
            modelBuilder.AddConfiguration(new MenuButtonEFConfiguration());
            modelBuilder.AddConfiguration(new ModuleEFConfiguration());
            modelBuilder.AddConfiguration(new RoleAuthorizeEFConfiguration());
            modelBuilder.AddConfiguration(new RoleEFConfiguration());
            modelBuilder.AddConfiguration(new UserLogOnEFConfiguration());
            modelBuilder.AddConfiguration(new UserEFConfiguration());
            modelBuilder.AddConfiguration(new DbBackupEFConfiguration());
            modelBuilder.AddConfiguration(new FilterIPEFConfiguration());
            modelBuilder.AddConfiguration(new LogEFConfiguration());
            modelBuilder.AddConfiguration(new MenuEFConfiguration());
            modelBuilder.AddConfiguration(new OrganizeEFConfiguration());
            modelBuilder.AddConfiguration(new PluginEFConfiguration());
            modelBuilder.AddConfiguration(new TenantEFConfiguration());
            //添加并配置第三方插件
            EvolutionPluginManager.AddPluginEFModle(modelBuilder);

            base.OnModelCreating(modelBuilder);
        }