using NCC.ConfigurableOptions; using Microsoft.Extensions.Configuration; namespace NCC.UnifyResult { /// /// 规范化配置选项 /// public sealed class UnifyResultSettingsOptions : IConfigurableOptions { /// /// 设置返回 200 状态码列表 /// 默认:401,403,如果设置为 null,则标识所有状态码都返回 200 /// public int[] Return200StatusCodes { get; set; } /// /// 适配(篡改)Http 状态码(只支持短路状态码,比如 401,403,500 等) /// public int[][] AdaptStatusCodes { get; set; } /// /// 是否支持 MVC 控制台规范化处理 /// public bool? SupportMvcController { get; set; } /// /// 选项后期配置 /// /// /// public void PostConfigure(UnifyResultSettingsOptions options, IConfiguration configuration) { options.Return200StatusCodes ??= new[] { 401, 403 }; options.SupportMvcController ??= false; } } }