Проф. В.К.Толстых, www.tolstykh.com Технологии разработки Internet- приложений ASP.NET приложения – валидация, валидационные элементы управления Из цикла.

Презентация:



Advertisements
Похожие презентации
Проф. В.К.Толстых, Технологии разработки Internet- приложений Delphi for.NET примеры: работа с файлами Из цикла лекций «Технологии разработки.
Advertisements

Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: HtmlControls Из цикла лекций «Технологии разработки Internet-приложений»
Проф. В.К.Толстых, Пример Web-службы Калькулятор с валидацией Из цикла лекций «Internet-технологии разработки приложений» для студентов.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – пользовательские элементы управления Из цикла лекций.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – обработка ошибок страниц и приложения, Global.aspx.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – локализация ресурсов приложения Из цикла лекций «Технологии.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: обработка данных форм. работа с формами работа с формами.
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 3 Элементы управления в действии Гайдар Магдануров
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – Модули HTTP, фильтры, события приложения - Global.asax.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – директивы Из цикла лекций «Технологии разработки Internet-приложений»
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – класс Control Из цикла лекций «Технологии разработки.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: динамические таблицы, привязка данных к выпадающему списку.
Проф. В.К.Толстых, Технологии разработки Internet- приложений Эталонные страницы – Master pages Из цикла лекций «Технологии разработки.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – элементы управления HTML Из цикла лекций «Технологии.
ДонНУ, кафедра КТ, проф.В.К.Толстых Технологии разработки Internet- приложений ASP.NET приложения: Безопасность – аутентификация Из цикла лекций «Технологии.
Проф. В.К.Толстых, Технологии разработки Internet- приложений Администрирование IIS 5, 6 сайт, виртуальный каталог, приложение, пул, рабочий.
Проф. В.К.Толстых, Применение ASP.NET AJAX Extensions Asynchronous JavaScript And XML (Асинхронный JavaScript и XML) Основано на существующих.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – оптимизация скорости работы приложений Из цикла лекций.
ДонНУ, кафедра КТ, проф.В.К.Толстых Web-службы (Web-сервисы) введение введение Разработка в среде Delphi Из цикла лекций «Internet-технологии разработки.
ДонНУ, кафедра КТ, проф.В.К.Толстых WCF-службы Создание и тестирование.dll-библиотеки WCF-служб Из цикла лекций «Internet-технологии разработки приложений»
Транксрипт:

проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – валидация, валидационные элементы управления Из цикла лекций «Технологии разработки Internet-приложений» для студентов 4-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета

Проверку данных, поступающих от пользователя, целесообразно реализовывать элементам управления – валидаторами. Они происходят от класса BaseValidator, который является производным от Label. Каждый отдельный валидатор может проверять единственное примитивное условие для выбранного элемента управления, при этом не потребуется писать код со множественными условными операторами if для проверки входных данных. Проверку правильности данных можно осуществлять как на клиенте, так и на сервере. При использовании клиентской валидации весь процесс проверки достоверности происходит на клиенте и реализуется на основе JavaScript. Такой подход может добавить интерактивности приложению, т.к. для проверки введенного значения уже не нужно обращаться к серверу – достаточно всего лишь запустить JavaScript-код на клиенте. ASP.NET по умолчанию пытается реализовать проверку на клиенте, свойство всех валидационных элементов управления EnableClientScript = true. Если клиент отключил выполнение сценариев, то они будут реализованы на сервере. Валидация (проверка достоверности) Никогда не доверяйте пользовательскому вводу. Предполагайте, что каждый пользователь злоумышленник.

Как это выглядит? Процесс проверки достоверности выглядит следующим образом: При выполнении postback страницы необходимо вызвать метод Validate() : if (IsPostBack) { Validate(); if (Page.IsValid) { … } В рамках метода страницы Validate() просматриваются свойства IsValid у каждого из валидатора и устанавливается свойство IsValid у всей страницы. При этом если хотя бы один из валидаторов имеет значение false в свойстве IsValid, у страницы также устанавливается значение IsValid = false. Если у всех валидаторов значение свойства IsValid равно true, то у страницы значение этого свойства также устанавливается в true. Описанный тип проверки достоверности, при котором на сервере происходит вызов методов Validate() называется серверной валидацией.

RequiredFieldValidator проверяет наличие данных в поле ввода. ValidationSummary создает сводку обо всех ошибках ввода. CompareValidator сравнивает введенное значение с заданным. Свойства ValueToCompare (с константой), ControlToCompare (с другим элементом управления). RegularExpressioinValidator проверяет данные по маске (регулярное выражение) в свойстве ValidationExpression. Например, для проверки адреса ValidationExpression = RangeValidator проверяет диапазон данных. Работает с различными типами. данных (свойство Type): String, Integer, Double, Date, Currency. CustomValidator позволяет осуществить собственный алгоритм валидации как на сервере, так и на клиенте. Валидационные элементы управления Для задания «ручного» алгоритма валидации при помощи CustomValidator на серверной стороне необходимо подписаться на событие ServerValidate. В обработчике этого события как раз можно реализовать свой собственный механизм валидации. При этом параметр args позволяет получить доступ к значению элемента управления ( args.Value ), а также задать результат валидации ( args.IsValid ). Для валидации на стороне клиента необходимо свойству ClientValidationFunction элемента CustomValidator задать имя JavaScript-функции, в которой будет реализован алгоритм клиентской валидации (см. пример Web-служба Калькулятор с валидацией).Web-служба Калькулятор с валидацией

Свойства валидационных элементов управления СвойствоОписание ControlToValidate Элемент, для которого надо проверить правильность ввода Display Способ сообщения об ошибке ввода: none – не отображается, static – обрабатывается клиентом, dynamic – обрабатывается сервером после потери компонентом фокуса. В любом случае сообщение об ошибке может отображаться в элементе ValidationSummary EnableClientScript Разрешение выполнения сценария проверки для клиента (по умолчанию – true ). Вывод сообщения реализуется в свойство.Text данного валидатора. Enabled Применим ли элемент проверки правильности ввода ErrorMessage Текст сообщения для ValidationSummary IsValid Булевское значение результата проверки (по умолчанию – true ) Text Текст сообщения в данном валидаторе.

Примеры приложений с валидацией Web-служба «Калькулятор»Web-служба «Калькулятор» средствами Visual Studio СлайдыСлайды «Создание формы заказа» средствами Delphi СлайдыСлайды «Пример - Web-служба Калькулятор с валидацией »