Validate.Net
Validate.Net — это набор плагинов для проверки данных на стороне сервера .NET, разработанный на основе идеи Validate.js. Он позволяет удобно и эффективно проверять, являются ли значения атрибутов сущности допустимыми. В нём встроено множество стандартных правил проверки данных (обязательное поле, длина строки в пределах интервала, максимальная и минимальная длина строки, максимальное и минимальное значение, диапазон значений, электронная почта, почтовый индекс, URL, регулярное число, отрицательное целое число, положительное целое число, неотрицательное целое число, неположительное целое число, IP-адрес, QQ, номер удостоверения личности, стандартный пароль). Поддерживает пользовательские регулярные выражения, методы переопределения и другие расширения для проверки. Это незаменимый инструмент для разработчиков серверной части.
NF4.0+
public class UserModel
{
/// <summary>
/// Проверка обязательного поля
/// </summary>
[ValidateRequired]
[Describe("пароль")]
public string Password { get; set; }
/// <summary>
/// Проверка длины строки в интервале
/// </summary>
[ValidateRangeLength(6, 20)]
[Describe("учётная запись")]
public string Account { get; set; }
/// <summary>
/// Проверка на наличие букв, только буквы
/// </summary>
[ValidateLetter]
public string Letter { get; set; }
/// <summary>
/// Проверка максимального значения
/// </summary>
[ValidateMaxValue(20)]
public int Age { get; set; }
/// <summary>
/// Проверка минимального значения
/// </summary>
[ValidateMinValue(5)]
public int MinLong { get; set; }
/// <summary>
/// Проверка диапазона значений
/// </summary>
[ValidateRangeValue(10,20)]
public int AgeRange { get; set; }
/// <summary>
/// Проверка максимальной длины
/// </summary>
[ValidateMaxLength(20)]
public string MaxLength { get; set; }
/// <summary>
/// Проверка минимальной длины
/// </summary>
[ValidateMinLength(5)]
public string MinLength { get; set; }
/// <summary>
/// Электронная почта
/// </summary>
[ValidateEmail]
public string Email { get; set; }
/// <summary>
/// Почтовый индекс
/// </summary>
[ValidateZipCode]
public string ZipCode { get; set; }
/// <summary>
/// Содержит китайский язык
/// </summary>
[ValidateChinese]
public string Chinese { get; set; }
/// <summary>
/// Отрицательное целое число
/// </summary>
[ValidateNegtiveInt]
public int NegtiveInt { get; set; }
/// <summary>
/// Положительное целое число
/// </summary>
[ValidatePositiveInt]
public int PositiveInt { get; set; }
/// <summary>
/// Неотрицательное целое число
/// </summary>
[ValidateNonnegativeInt]
public double NonnegativeInt { get; set; }
/// <summary>
/// Неположительное целое число
/// </summary>
[ValidateNonpositiveInt]
public double NonpositiveInt { get; set; }
/// <summary>
/// IP-адрес
/// </summary>
[ValidateIp]
public string Ip { get; set; }
/// <summary>
/// URL
/// </summary>
[ValidateUrl]
public string url { get; set; }
/// <summary>
/// Номер QQ
/// </summary>
[ValidateQQ]
public string QQ { get; set; }
/// <summary>
/// Пользовательская проверка регулярным выражением, пользовательское сообщение об ошибке при неудачной проверке
/// </summary>
[ValidateRegular("^[0-9]{6}$", "Ошибка проверки почтового индекса (пользовательская)")]
public string CustomStr { get; set; }
/// <summary>
/// Идентификационный номер (15 цифр или 18 цифр)
/// </summary>
[ValidateIDCard]
public string IDCard { get; set; }
/// <summary>
/// Код социального кредита
/// </summary>
[ValidateSocialCreditCode]
public string SocialCreditCode { get; set; }
/// <summary>
/// Стандартный пароль (содержит цифры, буквы и обычные специальные символы)
/// </summary>
[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].
**Свойство**: возраст — **значение**: 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
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )