mirror of
https://github.com/nsnail/NetAdmin.git
synced 2025-04-30 01:52:50 +08:00

* chore: 🔨 css 基础单位 [skip ci] * fix: 🐛 ca2263 System.Enum.GetValues<TEnum>() [skip ci] * feat: ✨ 前端表格高级筛选 [skip ci]
70 lines
3.1 KiB
C#
70 lines
3.1 KiB
C#
using NetAdmin.Host.Extensions;
|
||
using NetAdmin.Host.Middlewares;
|
||
using NetAdmin.ScheduledService.Extensions;
|
||
#if !DEBUG
|
||
using Prometheus;
|
||
#endif
|
||
|
||
namespace NetAdmin.ScheduledService;
|
||
|
||
/// <summary>
|
||
/// 启动类
|
||
/// </summary>
|
||
public sealed class Startup : Host.Startup
|
||
{
|
||
/// <summary>
|
||
/// 程序入口
|
||
/// </summary>
|
||
public static void Main(string[] args)
|
||
{
|
||
ShowBanner();
|
||
_ = Serve.Run(RunOptions.Default.WithArgs(args));
|
||
}
|
||
|
||
/// <summary>
|
||
/// 配置应用程序中间件
|
||
/// </summary>
|
||
public void Configure(IApplicationBuilder app, IHostApplicationLifetime lifeTime)
|
||
{
|
||
_ = app //
|
||
.UseMiddleware<SafetyShopHostMiddleware>() // 安全停机中间件
|
||
.EnableBuffering() // 启用请求体缓冲,允许多次读取请求体
|
||
.UseMiddleware<RequestAuditMiddleware>() // 使用RequestAuditMiddleware中间件,执行请求审计
|
||
#if DEBUG
|
||
.UseOpenApiSkin() // 使用OpenApiSkin中间件(仅在调试模式下),提供Swagger UI皮肤
|
||
#else
|
||
.UseHttpMetrics() // 使用HttpMetrics中间件,启用HTTP性能监控
|
||
#endif
|
||
.UseInject(string.Empty) // 使用Inject中间件,Furion脚手架的依赖注入支持
|
||
.UseUnifyResultStatusCodes() // 使用UnifyResultStatusCodes中间件,用于统一处理结果状态码
|
||
.UseCorsAccessor() // 使用CorsAccessor中间件,启用跨域资源共享(CORS)支持
|
||
.UseRouting() // 使用Routing中间件,配置路由映射
|
||
.UseMiddleware<RemoveNullNodeMiddleware>() // 使用RemoveNullNodeMiddleware中间件,删除JSON中的空节点
|
||
.UseEndpoints(); // 配置端点以处理请求
|
||
_ = lifeTime.ApplicationStopping.Register(SafetyShopHostMiddleware.OnStopping);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 配置服务容器
|
||
/// </summary>
|
||
public void ConfigureServices(IServiceCollection services)
|
||
{
|
||
_ = services //
|
||
.AddConsoleFormatter() // 添加控制台日志格式化器
|
||
.AddAllOptions() // 添加所有的配置选项
|
||
.AddSnowflake() // 添加雪花算法生成器
|
||
.AddEventBus() // 添加事件总线
|
||
.AddFreeSql() // 添加FreeSql数据库访问
|
||
.AddCorsAccessor() // 添加跨域资源共享(CORS)访问支持
|
||
.AddRedisCache() // 添加 Redis 缓存支持
|
||
.AddContextUser() // 添加上下文用户支持
|
||
.AddSchedules() // 添加计划任务
|
||
.AddRemoteRequest() // 添加远程请求支持
|
||
|
||
// IMvcBuilder
|
||
.AddControllers() // 添加控制器
|
||
.AddJsonSerializer() // 添加JSON序列化器
|
||
.AddDefaultApiResultHandler() // 添加默认的API结果处理程序
|
||
;
|
||
}
|
||
} |