Обратите внимание на отсутствие тегов Script — просто в коде Web-службы в них нет надобности. Страница начинается с директивы компилятора:
<%@ WebService Language="VB" Class="DataValidator"%>
Директива сообщает компилятору, что данная страница является Web-службой и что в качестве языка программирования мы будем использовать Visual Basic. Кроме того, определяется имя класса Web-службы.
Далее необходимо принять решение в отношении опции Option strict. Вы можете оставить ее включенной, но автор книги отдает предпочтение автоматическому выполнению преобразования и конкатенации переменных:
Затем необходимо импортировать в Web-службу библиотеку:
Imports System.Web.Services
Дальше следует определение класса. Обратите внимание: название класса в этом определении должно совпадать с именем, указанным в параметре Class директивы компилятора. Также обратите внимание на путь к файлу Web-службы. Возможно, вам понадобится изменить его с учетом местоположения этого файла на вашем сервере:
<WebService(Namespace:="http://localhost/" _
& "INetBook/C17/Server/")> _
Public Class DataValidator
Далее в коде определяются методы Web-службы. Как видите, после ключевого слова WebMethod следует слово Public. Оно объявляет метод открытым, что позволяет обращаться к нему не только с вашего сервера. Данный метод принимает три параметра типа Oate и возвращает значение типа Boolean:
<WebMethod()> Public Function _
DateRange(DateToTest as Date, StartDate as Date, _
EndDate as Date) as Boolean
Затем осуществляется проверка даты на предмет того, находится ли она в заданных пределах:
If DateToTest < StartDate or DateToTest > EndDate Then
Если это не так, в качестве результата возвращается значение False:
если проверка дает положительный ответ — значение True:
С помощью следующего метода указанный возраст проверяется на соответствие определенным рамкам (от 0 до 140 лет):
<WebMethod()> Public Function Age(FieldToTest as Integer) _
as Boolean
Эту проверку выполняет оператор:
If FieldToTest < 0 Or FieldToTest > 140 Then
Если возраст не соответствует заданным рамкам, возвращается значение False:
в противном случае — значение True:
Третий метод этой Web-службы применяется для проверки того, находится ли указанное число в заданном диапазоне:
<WebMethod()> Public Function NumberRange _
(FieldToTest as Single, MinNumber as Single, _
MaxNumber as Single) as Boolean
Эту проверку выполняет оператор:
If FieldToTest < MinNumber Or FieldToTest > MaxNumber Then
который при отрицательном результате возвращает значение False:
а при положительном — значение True:
Web-служба Обработка дат и строк
В Web-службе Обработка дат и строк задействовано четыре метода. Первый метод применяется для придания строке желаемой длины:
<WebMethod()> Public Function MakeLength _
(StringToConvert as String, DesiredLength as Long, _
PadCharacter as String) as String
Dim TempString as String
TempString = StringToConvert
If TempString.Length > DesiredLength Then
TempString = TeropString.Substring(0, DesiredLength)
Elseif TempString.Length < DesiredLength Then
Do Until TempString.Length >= DesiredLength
TempString = TempString 4 PadCharacter
Loop
End If
MakeLength = TempString
End Function
|