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

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



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

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

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

Web-служба «Калькулятор» Имя службы Атрибуты метода Параметры метода Реализация метода: Имя метода Атрибуты службы Содержание файла – одна строка Поддержка сервиса для ранних версий 1.1

Атрибуты CacheDuration – определяет промежуток времени в секундах на который кэшируется Web-служба. По умолчанию он равен 0, т.е. кэширование отключено. Description – описание метода, которое выводится на страницу службы под ссылкой на страницу метода. EnableSession – включает поддержку сеансов: [WebMethod(EnableSession=true)]. По умолчанию поддержка сеансов в Web-службах отключена, т.е. после выполнения каждого метода связь со службой разрывается. TransactionOption – управляет поддержкой транзакций MessageName – альтернативное (уникальное) имя метода, если их несколько с одним именем, т.е. – перегружаемые. BufferResponse – по умолчанию true, т.е. – ответ Web-службы перед отправкой на запрос клиента полностью формируется в буфере.

Тестирование Web-службы «Калькулятор» Показать тестирование метода CalculateCalculate Полное тестирование (в указанном виде) доступно только с локального сервера Показать WSDL Описание службы WSDL Описание службы Ответ – результат тестирования

Вызов Web-службы «Калькулятор»в ASP.NET-приложении GetWebServiceCalculate Вызов Web-службы «Калькулятор» в ASP.NET-приложении GetWebServiceCalculate Готовим ASP.NET проект для отправки исходных данных в Web-службу Валидатор CustomValidadtor далее

Подключение ссылки в VS 2012 на Web-службу «Калькулятор» Если Web-служба когда-либо будет модернизирована, то необходимо ссылку обновить через локальное меню папки App_WebReferences Пространство имён, где будет находится прокси-класс для службы Calculate.asmx

Вызов Web-служб реализуется с асинхронных.aspx - страниц, т.е. в директиве Page файла.aspx должно быть Async="true". Асинхронный вызов актуален если таких вызовов несколько и они связаны между собой. При этом код прокси-класса (для взаимодействия с web-службой) автоматически синхронизирует все поставленные в очередь вызовы и блокирует рендеринг страницы до тех пор пока все они не будут выполнены. Приложения, требующие длительного времени обработки (Web-службы, БД), должны организовываться в виде асинхронных страниц. В момент ожидания ответа от других серверов они не занимают пул приложений и не прерывают связь с клиентом из-за ограниченности времени. Синхронные страницы могут «забить» пул ожиданием ответов от внешних задач => новые запросы не обрабатываются (503 «Server too busy»), процессор приложения почти бездействует, а задачи в пуле снимаются с сообщением… Проверьте атрибут асинхронного вызова страницы

Код асинхронной страницы в VS 2012 –.NET 4.5 Входные переменные для Web-службы Идентификатор прокси-класса Web-службы Вызов метода валидации текущей страницы далее

Валидаторы проекта Проект может быть дополнен серверной и клиентской реализацией валидатора CustomValidator. Контроль данных целесообразно проводить до вызова удалённых служб. Серверная часть валидатора: Клиентская часть валидатора: Если преобразование к вещественному числу не дало результат NaN для обеих текст-боксов, то валидация на клиентской машине – успешная. Клиентский скрипт программируется вручную. Параметры функции – стандартные идентификаторы.