using Learn.Archives.Core.Common; using Microsoft.OpenApi.Models; using System.Text.Encodings.Web; using System.Text.Unicode; using Learn.Archives.Core.Common.Expand; using Mapster; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddLogging(loggingBuilder => { loggingBuilder.ClearProviders(); // 清除默认的日志提供程序 loggingBuilder.AddConsole(); // 添加控制台日志提供程序 loggingBuilder.SetMinimumLevel(LogLevel.Warning); // 设置最小日志级别为 Warning }); builder.Services.AddControllers() .AddJsonOptions(options => { options.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All); }); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Version = "v1", Description = "学校档案系统v1" }); var file = Path.Combine(AppContext.BaseDirectory, "Learn.Archives.API.xml"); // xml文档绝对路径 c.IncludeXmlComments(file, true); // true : 显示控制器层注释 c.OrderActionsBy(o => o.RelativePath); // 对action的名称进行排序,如果有多个,就可以看见效果了。 }); builder.Configuration.AddAppConfig(args); builder.Services.AddSqlSugarExpand(); builder.Services.AddRedisExpand(); builder.Services.AddCorsExpand(); builder.Services.AddMapster(); builder.Services.AddCorsExpand(); builder.Services.AddHttpClient(); builder.Services.AddHttpContextAccessor(); //异常过滤器 builder.Services.AddControllersWithViews(options => { options.Filters.Add(typeof(ExceptionFilter)); }); var app = builder.Build(); app.UseMiddleware("Swagger"); app.UseSwagger(); app.UseSwaggerUI(); //自定义 应用 app.UseCorsExpand(); app.UseSqlSugarExpand(); app.UseAuthorization(); app.MapControllers(); app.Run();