From 70233af5426b0d1c343ebe87183303a34a9aaa58 Mon Sep 17 00:00:00 2001 From: hutongqing <hutongqing@hnkhzn.com> Date: 星期三, 20 十一月 2024 09:05:38 +0800 Subject: [PATCH] WIDESEAWCS_QuartzJob更新版本 --- WIDESEAWCS_Server/WIDESEAWCS_Server/Program.cs | 51 ++++++++++++++++++++++++--------------------------- 1 files changed, 24 insertions(+), 27 deletions(-) diff --git a/WIDESEAWCS_Server/WIDESEAWCS_Server/Program.cs b/WIDESEAWCS_Server/WIDESEAWCS_Server/Program.cs index 2217039..30d606b 100644 --- a/WIDESEAWCS_Server/WIDESEAWCS_Server/Program.cs +++ b/WIDESEAWCS_Server/WIDESEAWCS_Server/Program.cs @@ -20,6 +20,8 @@ using WIDESEAWCS_QuartzJob.Seed; using Autofac.Core; using WIDESEAWCS_QuartzJob.QuartzExtensions; +using Microsoft.AspNetCore.Builder; +using WIDESEAWCS_Server.Filter; var builder = WebApplication.CreateBuilder(args); @@ -33,43 +35,40 @@ hostingContext.Configuration.ConfigureApplication(); config.Sources.Clear(); config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: false); -}); ; +}); builder.ConfigureApplication(); - // 2、配置服务 builder.Services.AddSingleton(new AppSettings(builder.Configuration));//注册 builder.Services.AddAllOptionRegister();//读取配置文件 builder.Services.AddMemoryCacheSetup();//缓存 builder.Services.AddSqlsugarSetup();//SqlSugar 启动服务 -builder.Services.AddInitializationHostServiceSetup();//应用初始化服务注入 +//builder.Services.AddHostedService<SeedDataHostedService>();//初始化数据库 + builder.Services.AddDbSetup();//Db 启动服务 -builder.Services.AddScoped<QuartzJobCreateDataTabel>(); -builder.Services.AddHostedService<QuartzJobDataTableHostedService>(); - -//todo 初始化模型验证配置 -//builder.Services.UseMethodsModelParameters().UseMethodsGeneralParameters(); -//builder.Services.AddSingleton<IObjectModelValidator>(new NullObjectModelValidator()); +//builder.Services.AddScoped<QuartzJobCreateDataTabel>();//任务调度 注入创建QuartzJob数据库表类 +//builder.Services.AddHostedService<QuartzJobDataTableHostedService>();//任务调度 映射QuartzJob数据库表 builder.Services.AddAutoMapperSetup(); builder.Services.AddCorsSetup(); + builder.Services.AddMiniProfilerSetup(); builder.Services.AddSwaggerSetup(); -builder.Services.AddJobSetup();//任务调度 启动服务 +builder.Services.AddJobSetup();//任务调度 注入反射获取依赖对象 builder.Services.AddHttpContextSetup(); -//builder.Services.AddHostedService<QuartzJobHostedService>(); +builder.Services.AddHostedService<QuartzJobHostedService>();//任务调度 启动服务 -//todo builder.Services.AddMvc(options => { options.Filters.Add(typeof(ApiAuthorizeFilter)); - //options.Filters.Add(typeof(ActionExecuteFilter)); + options.Filters.Add(typeof(ActionExecuteFilter)); + options.Filters.Add(typeof(CustomAuthorizeFilter)); }); builder.Services.AddAuthorizationSetup(); @@ -78,7 +77,6 @@ builder.Services.AddScoped<UseServiceDIAttribute>(); -//builder.Services.AddDistributedMemoryCache(); builder.Services.AddSession(); builder.Services.AddHttpClient(); @@ -86,8 +84,6 @@ builder.Services.AddControllers(o => { o.Filters.Add(typeof(GlobalExceptionsFilter));//全局异常 - //todo - //o.Conventions.Insert(0, new GlobalRoutePrefixFilter(new RouteAttribute(RoutePrefix.Name)));//路由 }) .AddNewtonsoftJson(options => { @@ -112,25 +108,26 @@ app.UseMiniProfiler();//性能分析器 app.ConfigureApplication();//配置文件 app.UseApplicationSetup();//启动配置 + +app.UseAllServicesMiddle(builder.Services); + app.UseSession(); -if (app.Environment.IsDevelopment()) +//if (app.Environment.IsDevelopment()) { - //todo - //app.UseSwaggerAuthorized(); - app.UseSwaggerMiddle(() => Assembly.GetExecutingAssembly().GetManifestResourceStream("WIDESEAWCS_Server.index.html")); + app.UseSwaggerAuthorized(); + app.UseSwaggerMiddle(() => Assembly.GetExecutingAssembly().GetManifestResourceStream("WIDESEAWCS_Server.index.html") ?? throw new Exception("未找到WIDESEAWCS_Server.index.html文件")); }//判断是否需要打开swagger app.UseIpLimitMiddle(); app.UseApiLogMiddleware(); -//todo -//app.UseRecordAccessLogsMiddle(); -app.UseCors(AppSettings.app(new string[] { "Cors", "PolicyName" })); +app.UseCors(AppSettings.Get(new string[] { "Cors", "PolicyName" })); -//DefaultFilesOptions defaultFilesOptions = new DefaultFilesOptions(); -//defaultFilesOptions.DefaultFileNames.Clear(); -//defaultFilesOptions.DefaultFileNames.Add("index.html"); -//app.UseDefaultFiles(defaultFilesOptions); +DefaultFilesOptions defaultFilesOptions = new DefaultFilesOptions(); +defaultFilesOptions.DefaultFileNames.Clear(); +defaultFilesOptions.DefaultFileNames.Add("index.html"); +app.UseDefaultFiles(defaultFilesOptions); +app.UseMiddleware<HttpRequestMiddleware>(); app.UseStaticFiles(); app.UseCookiePolicy(); app.UseStatusCodePages(); -- Gitblit v1.9.3