Я решил использовать валидатор ASP.NET для проверки моих десятков входов моего WebForm. Он отлично работает на стороне Клиент. Я имею в виду, я совершенно нормален с проверкой входов без «Проводки страницы назад» и т.д.Насколько надежным является ASP.NET Validator?
Но когда я пытаюсь использовать валидатор на коде позади, это дает мне, что атрибут Page.Isvalid
, и я запутаться с его надежностью. Вот вопросы, на которые я не мог ответить сам:
- Является Validator достаточно надежным, чтобы его можно использовать на стороне клиента? (Кроме того, отключить javascript, может ли это быть обработано?)
- Как этот валидатор достигает информации о действительности на стороне сервера? (Есть сгенерированный C# Validator код где-то или занимает информацию непосредственно из стороны клиента?)
Вот код, который я написал, чтобы проверить свои входы и на стороне сервера:
foreach (IValidator iValidator in Page.Validators)
{
if (!iValidator.IsValid) { return false; }
}
Но, независимо от .aspx и .js? Могу ли я полагаться на него на стороне сервера?
Благодарим за дополнительную информацию, но как работает этот Page.IsValid? – 3yanlis1bos
@ 3yanlis1bos: Это просто свойство, которое ничего не возвращает, но возвращает 'bool', который был установлен из' Page.Validate (validationGroup) '. Этот метод вызовет любой связанный валидатор метод 'Validate', например' RequiredFieldValidator', который проверяет, является ли соответствующий элемент управления ('ControlToValidate') пустым или нет. –
Откуда эта информация о действительности? Является ли он зависимым от js или чего-либо изменяемого на стороне клиента, или это действительно происходит из методов, которые хранятся в dll? – 3yanlis1bos