From 71d0c92a63f1e26c6ba9634413083de1acaf916c Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期三, 06 八月 2025 11:18:29 +0800 Subject: [PATCH] feat:数据字典类别开发 --- FlexJobApi.Core/FlexJobApiCoreStartup.cs | 34 ++++++++++++++++++++++++++++++---- 1 files changed, 30 insertions(+), 4 deletions(-) diff --git a/FlexJobApi.Core/FlexJobApiCoreStartup.cs b/FlexJobApi.Core/FlexJobApiCoreStartup.cs index e665ae2..cc2c31d 100644 --- a/FlexJobApi.Core/FlexJobApiCoreStartup.cs +++ b/FlexJobApi.Core/FlexJobApiCoreStartup.cs @@ -1,4 +1,5 @@ -锘縰sing Furion; +锘縰sing Consul; +using Furion; using Furion.EventBus; using MediatR; using Microsoft.AspNetCore.Builder; @@ -19,6 +20,8 @@ { public void ConfigureServices(IServiceCollection services) { + services.AddHealthChecks(); + services.AddConsoleFormatter(options => { options.WithTraceId = true; @@ -41,6 +44,12 @@ options.WithStackFrame = true; }); + services.AddConfigurableOptions<AliyunOptions>(); + + services.AddHttpRemote(); + + services.AddComponent<ConsulServiceComponent>(); + services.AddComponent<EventBusServiceComponent>(); services.AddComponent<DistributedCacheServiceComponent>(); @@ -48,22 +57,29 @@ services.AddMediatR(cfg => cfg.RegisterServicesFromAssemblies(App.Assemblies.ToArray())); services.AddHostedService<XmlDocBuildHostedService>(); + services.AddHostedService<BuildDynamicControllersHostedService>(); services.AddJwt<JwtHandler>(enableGlobalAuthorize: true); services.AddCorsAccessor(); + services.AddSpecificationDocuments(options => + { + options.OperationFilter<CustomOperationIdFilter>(); + options.SchemaFilter<EnumSchemaFilter>(); + }); + services.AddControllers() .AddNewtonsoftJson(options => { - options.SerializerSettings.Converters.Add(new StringEnumConverter()); + //options.SerializerSettings.Converters.Add(new StringEnumConverter()); }) .AddFriendlyException() .AddDataValidation() .AddInjectWithUnifyResult<FriendlyResultProvider>(); } - public void Configure(IApplicationBuilder app, IWebHostEnvironment env) + public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IHostApplicationLifetime lifetime) { // 瑙f瀽浜嬩欢鎬荤嚎鍙戝竷鏈嶅姟 var eventPublisher = app.ApplicationServices.GetRequiredService<IEventPublisher>(); @@ -81,7 +97,7 @@ app.UseUnifyResultStatusCodes(); - app.UseHttpsRedirection(); + //app.UseHttpsRedirection(); app.UseRouting(); @@ -92,10 +108,20 @@ app.UseInject(string.Empty); + app.UseSpecificationDocuments(); + app.UseEndpoints(endpoints => { endpoints.MapControllers(); + endpoints.MapHealthChecks("/healthz"); }); + + app.UseComponent<ConsulApplicationComponent>(env); + + //lifetime.ApplicationStarted.Register(async () => + //{ + // await ResourceUtils.BuildDynamicControllersAsync(); + //}); } } } -- Gitblit v1.9.1