1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/lkings-Validate.Net

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 9.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 09:15 587a6bc

Validate.Net

Введение

Validate.Net — это набор плагинов для проверки данных на стороне сервера .NET, разработанный на основе идеи Validate.js. Он позволяет удобно и эффективно проверять, являются ли значения атрибутов сущности допустимыми. В нём встроено множество стандартных правил проверки данных (обязательное поле, длина строки в пределах интервала, максимальная и минимальная длина строки, максимальное и минимальное значение, диапазон значений, электронная почта, почтовый индекс, URL, регулярное число, отрицательное целое число, положительное целое число, неотрицательное целое число, неположительное целое число, IP-адрес, QQ, номер удостоверения личности, стандартный пароль). Поддерживает пользовательские регулярные выражения, методы переопределения и другие расширения для проверки. Это незаменимый инструмент для разработчиков серверной части.

Архитектура программного обеспечения

NF4.0+

Инструкция по установке

  1. Добавьте ссылку на проект: Validate.Net.dll (файл находится в каталоге Validate.Net\bin\Release).
  2. Импортируйте пространство имён: using Validate.Net;

Использование

Пример кода класса сущности:

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 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/lkings-Validate.Net.git
git@api.gitlife.ru:oschina-mirror/lkings-Validate.Net.git
oschina-mirror
lkings-Validate.Net
lkings-Validate.Net
master