当前位置: 首页 > backend >正文

.net core web api 数据验证(DataAnnotations)

目录

一、什么是 DataAnnotations?

二、扩展验证逻辑(自定义验证器)


一、什么是 DataAnnotations?

DataAnnotations 是一组特性(Attributes),用于在模型类上定义验证规则。主要用于属性级别的数据验证,如必填、长度限制、格式要求等。

常见的 DataAnnotation 属性:

例如

public class UserDto
{[Required]public string Name { get; set; }[Range(18, 99)]public int Age { get; set; }[EmailAddress]public string Email { get; set; }
}

二、扩展验证逻辑(自定义验证器)

public class NotAdminAttribute : ValidationAttribute
{protected override ValidationResult IsValid(object value, ValidationContext validationContext){if (value.ToString().ToLower() == "admin"){return new ValidationResult("不能使用管理员名称");}return ValidationResult.Success;}
}public class UserDto
{[NotAdmin]public string Username { get; set; }
}

http://www.xdnf.cn/news/433.html

相关文章:

  • Java集合框架中的List、Map、Set详解
  • 焕活身心,解锁健康养生新方式
  • C#学习第17天:序列化和反序列化
  • 基于Redis的3种分布式ID生成策略
  • 多线程——阻塞队列(六)
  • LeetCode(Hot.2)—— 49.字符异位词分组题解
  • ARINC818-实现
  • ueditorplus编辑器已增加AI智能
  • UI键盘操作
  • 计算机网络期中复习笔记(自用)
  • 【技术派后端篇】 Redis 实现用户活跃度排行榜
  • 【UniApp】Vue2 scss 预编译器默认已由 node-sass 更换为 dart-sass
  • 如何优雅地为 Axios 配置失败重试与最大尝试次数
  • PG,TRPO,PPO,GRPO,DPO原理梳理
  • Windows桌面图标变白的解决方案
  • 不连续数据区间天数累计sql
  • Python制作简易PDF查看工具PDFViewerV1.0显示优化
  • HTML5+CSS3小实例:CSS立方体
  • 【Lua语言】Lua语言快速入门
  • redis和lua为什么能实现事务
  • 在STM32的定时器外设中,选择使用哪个外部时钟配置函数
  • 猫咪如厕检测与分类识别系统系列【十二】猫咪进出事件逻辑及日志优化
  • 【sylar-webserver】8 HOOK模块
  • Linux-进度条小程序
  • 【笔记】网路安全管理-实操
  • FiftyOne 管理数据
  • React-useRef
  • 实现Azure Data Factory安全地请求企业内部API返回数据
  • 图灵奖得主LeCun:DeepSeek开源在产品层是一种竞争,但在基础方法层更像是一种合作;新一代AI将情感化
  • Ubuntu20.04下Docker方案实现多平台SDK编译