From 3ec3e0c1913bc902dbbcaeae2959897df6212ec2 Mon Sep 17 00:00:00 2001
From: hutongqing <hutongqing@hnkhzn.com>
Date: 星期四, 28 十一月 2024 15:41:23 +0800
Subject: [PATCH] 更新
---
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 36684ae..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