Files
jinko.yikatong/Src/Dlhis.Middle/Program.cs

58 lines
2.1 KiB
C#

using Dlhis.Middle.BackgroundServices;
using Dlhis.Middle.Entities;
using Dlhis.Middle.Services;
using Kurisu.AspNetCore;
using Kurisu.AspNetCore.DataAccess.SqlSugar.Services;
using Kurisu.AspNetCore.Startup;
using Microsoft.IdentityModel.Logging;
namespace Dlhis.Middle;
class Program
{
static void Main(string[] args)
{
KurisuHost.Run<Startup>(args);
}
}
public class Startup : DefaultStartup
{
public Startup(IConfiguration configuration) : base(configuration)
{
IdentityModelEventSource.ShowPII = true;
}
public override void ConfigureServices(IServiceCollection services)
{
base.ConfigureServices(services);
services.AddHostedService<BalanceRecordUploadBackgroundService>();
services.AddHostedService<HealthCheckBackgroundService>();
services.AddRemoteCall(App.ActiveTypes);
services.AddMemoryCache();
}
/// <inheritdoc />
public override void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
base.Configure(app, env);
// var healthCheckService = app.ApplicationServices.GetService<IHealthCheckService>();
// if (healthCheckService.DoHealthCheckAsync().GetAwaiter().GetResult())
// {
// using var scope = app.ApplicationServices.CreateScope();
// var db = scope.ServiceProvider.GetService<IDbContext>();
//
// db.Client.DbMaintenance.CreateDatabase();
// db.Client.CodeFirst.InitTables<LocalBalanceRecordEntity, LocalGainfoEntity, LocalGainfoMealEntity, LocalBusinessPlaceEntity>();
// db.Client.CodeFirst.InitTables<LocalBusinessShiftEntity, LocalDeviceRegistryEntity, LocalDeviceEntity, LocalBusinessPlaceShiftRelationshipEntity, LocalBusinessShiftMealRelationshipEntity>();
// db.Client.CodeFirst.InitTables<LocalCanteenSettingEntity, LocalDepartmentEntity>();
//
// var factories = scope.ServiceProvider.GetService<ISettingService>().GetFactories();
// var ds = scope.ServiceProvider.GetService<IDataDownloadService>();
// ds.InitAsync(factories).Wait();
// }
}
}