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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Web-службы

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


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

Создатель сайта-выпускник курсов web-дизайнеров Сафоновского Колледжа Информационных Технологий Максим Котликов
Если вызывающее приложение передает службе в качестве идентификатора посетителя значение 0, значит, это новый посетитель:

    If VisitorlD = 0 Then

а следовательно, в таблицу visitors нужно добавить новую запись:

    DBInsert.CommandText = "Insert Into Visitors " _
    & " {DateEntered) Values (GetDateO)"
    DBInsert.ExecuteNonQuery()

Из базы данных извлекается идентификатор только что добавленной записи:

    DBCommand - New OleDbDataAdapter _
    ("Select Max(VisitorlD) as MaxID "
    & "From Visitors", DBConn)
    DBCommand. Fill (DSData, _
    "CurrentID")

который присваивается второму параметру метода:

    VisitorlD = DSData.Tables("CurrentID"). _
    Rows(0).Item("MaxID")

Теперь новую запись можло добавить в таблицу Page Views:

    DBInsert.CommandText = "Insert Into PageViews " _
    & "(DateEntered, PageName, VisitorlD) Values (" _
    & "GetDateO , '"
    & PageName &"',"_
    & VisitorlD & ")"
    DBInsert.ExecuteNonQuery()

и в качестве результата выдать идентификатор нового посетителя:

    RecordPageHit = VisitorlD

Тестирование новой Web-службы

Созданную вами Web-службу должно использовать клиентское приложение. В следующем разделе мы создадим такое приложение и свяжем его с Web-службой. А на данном этапе новую службу нужно непременно протестировать — мы должны убедиться, что она работает именно так, как ожидалось. Открыв страницу одной из созданных Web-служб, вы увидите, что IIS генерирует тестовую страницу, подобную той, что изображена на рис. Появление такой страницы при обращении к Web-службе свидетельствует об успешной компиляции ее кода.

На странице перечислены все методы, задействованные в Web-службе. Здесь вы даже можете поработать с ними. Щелкните на ссылке с именем нужного метода, а затем в открывшейся странице введите в поля данные и нажмите кнопку Invoke. Результат работы метода показан на странице, представленной на рис.


Тестовая страница Web-службы


Результаты выполнения метода

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

Использование Web-службы

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

Организация функционирования Web-службы

Для организации работы Web-службы в корневой папке Web-узла необходимо создать подпапку bin. В ней должен содержаться двоичный файл библиотеки DLL, обеспечивающий работу методов службы. После этого, воспользовавшись двумя утилитами командной строки, нужно создать файл класса и файл библиотеки DLL для работы Web-службы.

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

    wsdl http://localhost/InetBooJt/C17/server/UsageTracker.asmx?WSDL

В результате будет создан файл класса, имеющий расширение cs. Вам нужно изменить указанный параметр в соответствии с реальным размещением asmx-файла на сервере. Обратите внимание, что к концу имени файла прибавляются символы 7WSDL.


Создание файла класса

Затем для Web-службы нужно создать динамически загружаемую библиотеку (DLL), для чего нам придется обратиться к программе CSC:

    csc.exe /out:bin\UsageTracker.dll /t:library /r:System.XML.dll
    /г:System.Web.Services.dll UsageTracker.es


Создание файла DLL

Обратите внимание на то, что имя библиотеки DLL и папку, в которую ее следует поместить, задает параметр out, а также на то, что в командной строке указывается имя файла класса UsageTracker.cs, созданного предыдущей командой.

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

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

Код тестовой страницы Проверка данных вызывает одноименную Web-службу, с тем чтобы проверить ее работу.

Первая процедура запускается при нажатии первой кнопки ОК:

    Sub SubmitBtnl_Click(Sender As Object, E As EventArgs)
    Dim MyDS as New DataValidator()
    IblResultl.Text = "Результат: " & MyDS.DateRange _
    (txtTestDate.Text, txtStartDate.Text, txtEndDate.Text)
    End Sub

Она создает экземпляр Web-службы:

    Dim MyDS as New DataValidator()

Hosted by uCoz