Реализация Web-метода TellFortune()

Реализация Web-метода TellFortune()

Ваш Web-сервис XML MagicEightBall будет имитировать классическую говорящую игрушку, сообщающую предсказания. Для этого добавьте в класс Service следующий метод (существующий Web-метод HelloWorld() можно удалить).

[WebMethod]

public string TellFortune(string вопросПользователя) {

 string[] answers = {"Будущее неоднозначно", "Да", "Нет", "Вряд ли", "Спросите еще раз", "Определенно" };

 // Возвращение случайного ответа на вопрос.

 Random r = new Random();

 return string.Format("{0}? {1}", вопросПользователя, answers[r.Next(answers.Length)]);

}

Для проверки нового Web-сервиса XML просто запустите проект на выполнение (или для отладки) в Visual Studio 2005. Поскольку для метода ТеllFortune() требуется один входной параметр, автоматически генерируемая HTML-страница тестирования обеспечивает необходимое поле ввода (рис. 25.4).

Рис. 25.4. Вызов Web-метода TellFortune()

Вот возможный ответ на вопрос "Будет ли отремонтирован водосток в выходные?"

‹?xml version="1.0" encoding="utf-8"?›

‹string xmlns="http://tempuri.org/"›"Будет ли отремонтирован водосток в выходные? Вряд ли

‹/string

Итак, к этому моменту вы создали два простых Web-сервиса XML: один вручную, а другой – с помощью Visual Studio 2005. Теперь у вас есть хорошая основа для углубленного обсуждения соответствующих вопросов, и начнем мы это обсуждение с рассмотрения роли базового класса

Исходный код. Файлы примера MagicEightBallWebService размещены в подкаталоге, соответствующем главе 25.