# Validate.Net **Repository Path**: 2012120823/Validate.Net ## Basic Information - **Project Name**: Validate.Net - **Description**: Validate.Net是借助Validate.js的思想开发的一套.Net服务端数据校验插件,可以更方便高效的校验实体内的属性值是否合法。内置多种常规数据校验规则(必填、字符串长度区间、字符串最大最小长度、最大最小值、值区间、Email、邮编、url、正整数、负整数、非正整数、非负整数、ip地址、qq、身份证号码、统一社会信用代码,常规密码)。支持自定义正则校验、方法重写等扩展校验。是做后端开发的必备利器。 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://gitee.com/lkings/Validate.Net - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2020-09-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Validate.Net #### 介绍 Validate.Net是借助Validate.js的思想开发的一套.Net服务端数据校验插件,可以更方便高效的校验实体内的属性值是否合法。内置多种常规数据校验规则(必填、字符串长度区间、字符串最大最小长度、最大最小值、值区间、Email、邮编、url、正整数、负整数、非正整数、非负整数、ip地址、qq、身份证号码、统一社会信用代码,常规密码)。支持自定义正则校验、方法重写等扩展校验。是做后端开发的必备利器。 #### 软件架构 NF4.0+ #### 安装教程 1. 项目中引用:Validate.Net.dll(文件在目录Validate.Net\bin\Release\下); 2. 导入命名空间:using Validate.Net; #### 使用说明 #### 实体类示例代码: public class UserModel { /// /// 校验必填 /// [ValidateRequired] [Describe("密码")] public string Password { get; set; } /// /// 校验字符串长度区间 /// [ValidateRangeLength(6, 20)] [Describe("用户账户")] public string Account { get; set; } /// /// 校验字母,只能包含字母 /// [ValidateLetter] public string Letter { get; set; } /// /// 校验最大值 /// [ValidateMaxValue(20)] public int Age { get; set; } /// /// 校验最小值 /// [ValidateMinValue(5)] public int MinLong { get; set; } /// /// 校验值区间 /// [ValidateRangeValue(10,20)] public int AgeRange { get; set; } /// /// 校验最大长度 /// [ValidateMaxLength(20)] public string MaxLength { get; set; } /// /// 校验最小长度 /// [ValidateMinLength(5)] public string MinLength { get; set; } /// /// 校验Email /// [ValidateEmail] public string Email { get; set; } /// /// 校验邮编 /// [ValidateZipCode] public string ZipCode { get; set; } /// /// 校验包含中文 /// [ValidateChinese] public string Chinese { get; set; } /// /// 校验负整数 /// [ValidateNegtiveInt] public int NegtiveInt { get; set; } /// /// 校验正整数 /// [ValidatePositiveInt] public int PositiveInt { get; set; } /// /// 校验非负整数 /// [ValidateNonnegativeInt] public double NonnegativeInt { get; set; } /// /// 校验非正整数 /// [ValidateNonpositiveInt] public double NonpositiveInt { get; set; } /// /// 校验ip地址 /// [ValidateIp] public string Ip { get; set; } /// /// 校验url /// [ValidateUrl] public string url { get; set; } /// /// 校验qq号 /// [ValidateQQ] public string QQ { get; set; } /// /// 自定义正则校验、自定义校验失败提示信息 /// [ValidateRegular("^[0-9]{6}$", "邮编格式校验失败(自定义)")] public string CustomStr { get; set; } /// /// 校验身份证(15位身份证号,和18位身份证号) /// [ValidateIDCard] public string IDCard { get; set; } /// /// 校验统一社会信用代码 /// [ValidateSocialCreditCode] public string SocialCreditCode { get; set; } /// /// 一般密码校验(包含数字和字母及常规特殊符号) /// [ValidatePwd] public string Pwd { get; set; } } #### 调用示例 static void Main(string[] args) { UserModel user = new UserModel() { Account = "1000", Password = "", Email = "77111.cn", ZipCode = "6572151", Chinese = "wjl", NegtiveInt = 1, PositiveInt= -2, Ip = "192.0.0.256", url = "https://www.baidu.com", CustomStr = "657215@", MaxLength = null, Age = 100, Letter = "www", MinLong = 0, AgeRange = 0, MinLength = "123456", QQ = "13155654521", IDCard = "2102111972110408721", SocialCreditCode = "91350500611880326T", Pwd = "wjl1345", NonpositiveInt = -66.1, NonnegativeInt = 66.1, }; if (!user.Validate(out List errorList)) { foreach (string error in errorList) { Console.WriteLine($"{error}\r\n"); } } Console.ReadLine(); } #### 执行结果 属性:密码 - 值: 错误信息: 校验必填项失败 属性:用户账户 - 值:1000 错误信息: 长度范围为:[6—20] 属性:Age - 值:100 错误信息: 最大值为:20 属性:MinLong - 值:0 错误信息: 最小值为:5 属性:AgeRange - 值:0 错误信息: 值范围为:[10—20] 属性:Email - 值:77111.cn 错误信息: 邮箱格式校验失败 属性:ZipCode - 值:6572151 错误信息: 邮政编码格式校验失败 属性:Chinese - 值:wjl 错误信息: 中文校验失败(必须包含中文) 属性:NegtiveInt - 值:1 错误信息: 负整数校验失败 属性:PositiveInt - 值:-2 错误信息: 正整数校验失败 属性:Ip - 值:192.0.0.256 错误信息: 校验ip失败 属性:CustomStr - 值:657215@ 错误信息: 邮编格式校验失败(自定义) 属性:IDCard - 值:2102111972110408721 错误信息: 校验身份证合法性失败 属性:Pwd - 值:wjl1345 错误信息: 一般密码校验失败(包含数字和字母及常规特殊符号) #### 我的博客园地址 https://www.cnblogs.com/netlws/ #### gitee地址 https://gitee.com/lkings/Validate.Net#validatenet