Знакомство с ASP.NET

Что еще нужно знать об ASP.NET

Взаимодействие с клиентом

Создание интерактивных приложений для intranet-сетей

Расширение функциональных возможностей intarnet

Создание спортивного Web-узла

Управление содержимым Web-узла

Отслеживание действий посетителейa

Виртуальный университет

 Использование специализированных приложений на узлах компаний

Виртуальная риэлтерская контора

Персонализация узла для посетителей

Интерактивные возможности узла

Увеличение посещаемости узла

Создание интерактивного магазина

Создание интерактивного аукциона

Web-службы

Справочник по языку ASP.NET/VB.


Сайт создан по материалам книги Г. Бучека "Учебный курс по ASP.NET". Москва: BHV, 2002.

Создатель сайта-выпускник курсов web-дизайнеров Сафоновского Колледжа Информационных Технологий Максим Котликов

Web-службы

Технология ASP.NET предоставляет разработчикам широкие возможности по созданию различных Web-служб, чем выгодно отличается от ASP. Эти службы способны удовлетворить многие нужды и запросы не только посетителей, но и разработчиков. В частности, Web-службы могут обеспечить доступ к вашим библиотекам кодов — как с локального компьютера, так и с любого другого, находящегося в любой точке земного шара, и даже с другой операционной системой. Функционирование Web-служб основано на применении стандартных форматов XML, что дает им возможность обслуживать запросы от разнотипных операционных систем и компьютеров.

Web-службы можно использовать для решения самых разнообразных задач. Предположим, вы создали прекрасную библиотеку, читатели которой обслуживаются компанией быстрой доставки почты UPS, FedEx или USPS по почтовым кодам. Почему бы вам не реализовать библиотеку в виде Web-службы и не взимать плату с желающих подключиться к ней?

Вы можете реализовать в виде службы и набор функций, часто применяемых в различных программах компании, где вы работаете (например, в бухгалтерских). Если приложения с клиентских Компьютерре ваших сослуживцев будут использовать такую службу, разработчикам не придется по многу раз писать один и тот же код.

Поскольку код службы выполняется на вашем сервере, вы без труда сможете отследить, кто пользуется ее услугами. А при обновлении службы изменения производятся только в одном месте — на вашем сервере.

В настоящей главе речь пойдет о создании Web-служб и их использовании клиентским приложением через страницу ASP.NET. Мы рассмотрим работу трех Web-служб. Первая выполняет несколько простых функций проверки данных, вторая позволяет производить действия со строками и датами, а третья фиксирует все посещения страницы и определяет их общее количество.

Обратите внимание, что для работы третьей Web-службы используется база данных, описанная в главе 8. Пожалуйста, вернитесь к указанной главе, если вас интересует структура этой базы данных.

Описание проекта

Прежде чем говорить о принципах создания и использования Web-служб, давайте ознакомимся с предназначенными для их вызова тестовыми страницами. В этой главе, как уже было сказано, мы используем три Web-службы. Работа каждой службы демонстрируется посредством одной ASP.NET-страницы. Начнем мы с Web-службы Проверка данных, которая на рис. показана в действии.


Страница тестирования службы Проверки данных

В Web-службе Проверка данных задействовано три метода. Первый метод применяется для проверки того, находится ли указанная дата между двумя другими датами. Если результат такой проверки положителен, то в качестве значения мы получаем True; в противном случае — False. В данном примере выдается результат False, поскольку проверяемая дата не находится в указанном интервале.

С помощью следующего метода проверяется соответствие допустимым пределам возраста человека. Корректным значением здесь является 12, а число 200 таковым не может считаться.

Третий метод применяется для проверки того, находится ли указанное число в заданном диапазоне. В нашем случае это не так, поэтому выдается результат False.

На рис. приведены результаты работы второй Web-службы, получившей название Обработка дат и строк.

Служба предоставляет в распоряжение клиента четыре метода. Первый метод применяется для придания строке желаемой длины. Строка укорачивается, если она слишком длинная, или удлиняется с заполнением указанным символом, если слишком короткая,


Web-служба Обработка дат и строк в действии

Второй метод выбирает фрагмент строки, помеченный специальным знаком. В данном примере такцм является символ «тильда» (~). Поэтому в качестве результата выдается текст, находящийся перед этим символом.

Два следующих метода этой службы оперируют с датами. Один выводит первый день следующего месяца в соответствии с введенной датой, другой выдает диапазон дат от 1 января текущего года до текущей даты.

Страница, использующая третью службу, Количество обращений, показана на рис. Web-служба содержит единственный метод. С помощью этого метода фиксируется число посещений страницы в базе данных проекта, рассмотренного в главе 8.


Страница тестирования службы Количество обращений

Код проекта

Код каждой из Web-служб, описанных в предыдущем разделе, содержится на отдельной странице. Файл с такой страницей должен иметь расширение asmx. Мы сначала рассмотрим код страниц, затем — простейший способ тестирования Web-служб, и лишь после этого перейдем к созданию используемых данными службами ASP.NET-страниц.

Web-служба Проверка данных

Подобно коду всех Web-служб, которые мы рассмотрим в настоящем разделе, код страницы службы Проверка данных имеет определенное содержимое и заданную структуру. Проанализируем его.

    <%@ WebService Language="VB" Class="DataValidator"%>
    Option Strict Off
    Imports System.Web.Services
    <WebService(Namespace:="http://localhost/" _
    & "INetBook/C17/Server/")>
    Public Class DataValidator
    <WebMethod()> Public Function _
    DateRange(DateToTest as Date, StartDate as Date, _
    EndDate as Date) as Boolean
    If DateToTest < StartDate or DateToTest > EndDate Then
    DateRange = False
    Else
    DateRange = True
    End If
    End Function
    <WebMethod()> Public Function Age(FieldToTest as Integer) _
    as Boolean
    If FieldToTest < 0 Or FieldToTest > 140 Then
    Age = False
    Else
    Age = True
    End If
    End Function
    <WebMethod()> Public Function NumberRange _
    (FieldToTest as Single, MinNumber as Single, _
    MaxNumber as Single) as Boolean
    If FieldToTest < MinNumber Or FieldToTest > MaxNumber Then
    NumberRange = False
    Else
    NumberRange = True
    End If
    End Function
    End Class

Hosted by uCoz