Использование похоже на Asp.net MVC. По сути, в интерфейс добавляется слой проверки js, а в контроллер — уровень проверки фона. Валидация уровня интерфейса js — это ссылка на два js-скрипта для работы.
Если этот скрипт не ссылается, проверка HTML-страницы фронтенда не работает. Информация о запросе проверки передаётся через asp-validation-for, например, <span asp-validation-for="Rating" class="text-danger"></span> Если проверка не проходит, подсказка автоматически добавляется в текст span-тега.
Конкретные примеры
1Создайте тип для проверки
Атрибут Required указывает, что атрибут не может быть null, но не может проверять наличие пробелов Типы значений (например, десятичный, int, float, DateTime) необходимы сами по себе и не требуют атрибута [Required]. Функция Диапазон ограничивает значение в указанном диапазоне. Функция StringLength позволяет установить максимальную длину струны, а также опциональную минимальную длину. Функция RegularExpression для проверки регулярных выражений.
[Compare("Password", ErrorMessage = "Пароль введён дважды несовпадающий")] [display(Name="Подтвердить пароль")] [DataType(DataType.Password)]
Распространённые встроенные атрибуты валидации: [CreditCard]: Проверьте, что атрибут в формате кредитной карты [Сравнить]: Проверьте, совпадают ли два атрибута в модели [EmailAddress]: Проверьте, что атрибут находится в формате электронной почты [Телефон]: Проверьте, что атрибут в формате номера телефона [Диапазон]: Проверьте, что значение атрибута находится в заданном диапазоне [RegularExpression]: Проверьте, совпадают ли данные с указанным регулярным выражением [Обязательно]: Обязательные атрибуты [StringLength]: Проверьте максимальную длину свойства строки [url]: Проверьте, что атрибут находится в формате URL Примечание: использование функции Range в DateTime для валидации даты JQuery запрещено. Потому что независимо от того, заполнено ли временное значение или нет, валидация js даст ошибку.
2 Валидация на контроллере
3 страницы интерфейса
Как показано на изображении: дата отбора вызывает ошибку, именно из-за Использование Range в типе DateTime является причиной, поэтому использование Range on DateTime запрещено.
5 Настройте информацию о запросах при неудачной проверке данных
Атрибут ErrorMessage используется в функции валидации Например, [StringLength(30, ErrorMessage="Жанр не может быть длиннее 30")]
|