using Dlhis.Entity.Basic.Entity; using Kurisu.AspNetCore; using Kurisu.AspNetCore.Startup; using Kurisu.SqlSugar.Extensions; using SqlSugar; namespace Dlhis.Canteen; public class SqlSugarPack : BaseAppPack { public override bool IsBeforeUseRouting { get; } public override void ConfigureServices(IServiceCollection services) { services.AddSqlSugar(); } public override void Configure(IApplicationBuilder app, IWebHostEnvironment env) { #if DEBUG using var scope = app.ApplicationServices.CreateScope(); var db = scope.ServiceProvider.GetService(); var tables = App.ActiveTyps.Where(x => x.IsDefined(typeof(SugarTable), false)) .Where(x => !x.IsDefined(typeof(SkipScanAttribute), false)) .ToArray(); db.DbMaintenance.CreateDatabase(); db.CodeFirst.InitTables(tables); using var scopeFace = app.ApplicationServices.CreateScope(); var dbFace = scopeFace.ServiceProvider.GetService(); var faceConnectionString = Configuration.GetSection("SqlSugarOptions:FaceConnectionString").Value; dbFace.CurrentConnectionConfig.ConnectionString = faceConnectionString; dbFace.DbMaintenance.CreateDatabase(); dbFace.CodeFirst.InitTables(); #endif } }