.net core 校验字段并自定义返回格式

news/2024/5/19 21:08:11 标签: .netcore, c#
        /// <summary>
        /// 开始行数
        /// </summary>
        [Range(1, int.MaxValue, ErrorMessage = "Page必须大于0")]
        public int Page { get; set; }

配置  [Required][StringLength][RegularExpression] 和 [Range] 验证特性

 services.Configure<ApiBehaviorOptions>(options =>
            {
                options.InvalidModelStateResponseFactory = actionContext =>
                {
                    //获取验证失败的模型字段 
                    var errors = actionContext.ModelState
                        .Where(s => s.Value != null && s.Value.ValidationState == ModelValidationState.Invalid)
                        .SelectMany(s => s.Value!.Errors.ToList())
                        .Select(e => e.ErrorMessage)
                        .ToList();

                    // 统一返回格式
                    var result = new CommonResult()
                    {
                        ErrCode = StatusCodes.Status400BadRequest.ToString(),
                        ErrMsg = "数据验证不通过!," + string.Join(",", errors),
                        Success = false
                    };
                    return new BadRequestObjectResult(result);
                };
            });

在starup.cs里自定义格式


http://www.niftyadmin.cn/n/5207710.html

相关文章

QSplitter分裂器

QSplitter QSplitter 是 Qt 框架提供的一个小部件&#xff08;widget&#xff09;&#xff0c;用于在用户界面中创建可拖动的分割窗口&#xff0c;允许用户调整子部件的大小和布局。它可以将父部件分割为多个可调整大小的子部件&#xff0c;使用户能够自定义界面的布局和大小。…

2002-2020年341个地级市农业保险收入数据

2002-2020年341个地级市农业保险收入数据 1、时间&#xff1a;2002-2020年 2、范围&#xff1a;341个地级市 3、指标&#xff1a;农业保险收入 4、来源&#xff1a;整理自wind、保险年鉴 5、指标解释&#xff1a; 农业保险保费收入是指保险公司从农户或农业生产经营者那里…

ultralytics yolov8 实例分割 训练自有数据集

参考: https://docs.ultralytics.com/datasets/segment/coco/ http://www.bryh.cn/a/613333.html 1、数据下载与转换yolo格式 1)数据集下载: 参考:https://universe.roboflow.com/naumov-igor-segmentation/car-segmetarion 下载的是coco格式,需要转换 2)coco2yolo t…

Flink Table API 读写MySQL

Flink Table API 读写 MySQL import org.apache.flink.connector.jdbc.table.JdbcConnectorOptions; import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment; import org.apache.flink.table.api.DataTypes; import org.apache.flink.table.api.Envi…

Hyper-V系列:Hyper-V启动、创建虚拟机、与主机传输文件

Hyper-V启动、创建虚拟机、与主机传输文件 一. 简介二. 启用Hyper-V的方式也很简单:一、从“任务管理器”的“性能”查看虚拟化是否启用,未启用的需要到BIOS开启:右下角可以看到“虚拟化:已启用”二、启用Hyper-v和虚拟机1.电脑左下角右键打开应用界面——可选功能2.在可选…

C++中缺省值的用法和注意事项

缺省值是指在函数声明时为参数提供的默认值&#xff0c;如果调用函数时没有传递参数&#xff0c;那么编译器就会自动使用缺省值。如果传递了参数&#xff0c;那么缺省值就会被忽略。使用缺省值可以简化函数的调用&#xff0c;减少重载函数的数量&#xff0c;提高代码的可读性和…

自动驾驶术语汇总

目录 智驾级别芯片相关自动驾驶相关辅助驾驶相关预警相关传感器相关泊车相关安全相关车灯相关 智驾级别 L0-L2属于辅助驾驶&#xff0c;L4-L5才算自动驾驶 L0&#xff08;Level 0&#xff09;&#xff1a;无自动化。这是大多数传统汽车的级别&#xff0c;所有的驾驶任务都需要…

如何应用ChatGPT撰写、修改论文及工作报告,提供写作能力及优化工作??

如果我想让gpt从pdf文档中提取相关关键词的内容&#xff0c;可以怎么做呢&#xff1f;&#xff1f;我们评论区讨论 ChatGPT 在论文写作与编程方面也具备强大的能力。无论是进行代码生成、错误调试还是解决编程难题&#xff0c;ChatGPT都能为您提供实用且高质量的建议和指导&am…