This commit is contained in:
qianhao.xu
2025-02-21 13:04:44 +08:00
parent f80aca492c
commit 218a1ce86a
8 changed files with 191 additions and 95 deletions

View File

@@ -22,7 +22,10 @@ builder.Host.UseNLog();
builder.Services.AddDynamicApi();
// Add services to the container.
builder.Services.AddControllers();
builder.Services.AddControllers(options =>
{
options.ModelBinderProviders.Insert(0, new LocalDateModelBinderProvider());
});
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
@@ -65,15 +68,17 @@ if (openRedis == "1")
builder.Services.AddMvc(options =>
{
options.Filters.Add(typeof(GlobalActionMonitor));//全局注册
})
});
builder.Services.AddControllers()
//解析来自客户端的 POST 请求中的 JSON 数据
.AddJsonOptions(options =>
{
//options.JsonSerializerOptions.NumberHandling = JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString;
options.JsonSerializerOptions.WriteIndented = true;
options.JsonSerializerOptions.Converters.Add(new DateTimeArrayConverter()); // 注册新的转换器
options.JsonSerializerOptions.Converters.Add(new JsonConverterUtil.DateTimeConverter());
options.JsonSerializerOptions.Converters.Add(new JsonConverterUtil.DateTimeNullConverter());
options.JsonSerializerOptions.Converters.Add(new JsonConverterUtil.DateTimeArrayConverter());
options.JsonSerializerOptions.Converters.Add(new JsonConverterUtil.DateTimeNullableArrayConverter());
options.JsonSerializerOptions.Converters.Add(new StringConverter());
//PropertyNamingPolicy属性用于前端传过来的属性的格式策略目前内置的仅有一种策略CamelCase
options.JsonSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.CamelCase;
@@ -117,6 +122,8 @@ app.Use(async (context, next) =>
});
//使用全局异常中间件
app.UseMiddleware<GlobalExceptionMiddleware>();
//创建一个中间件来统一处理所有进入的 HTTP GET 请求,并对其中可能存在的 UTC 格式的时间数组进行转换
//app.UseMiddleware<UtcToLocalMiddleware>();
// 配置中间件以支持本地化
var supportedCultures = new List<CultureInfo> {