Теперь вам нужно добавить Web-сервис для имитации выполнения резервирований. Для этого добавьте в ваше решение проект ASP.NET Web Service project. Создайте единственный метод ReserveTravel, который принимает идентификатор записи запроса на поездку и возвращает номер подтверждения. Ваш код должен выглядеть примерно так:
namespace TravelReservationService {
[WebService(Namespace = "
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfilel_l)] [Toolboxltem(false)]
public class Reservation : System.Web.Services.WebService {
[WebMethod]
public string ReserveTravel(int travelld) {
// Тестовый код для возврата номера подтверждения return "7X0789432";
}
}
>
Вернитесь к вашему рабочему процессу и добавьте ссылку на этот Web-сервис. Используйте кнопку Advanced в диалоговом окне Add Service Reference для добавления стандартной ссылки на Web-сервис (вместо ссылки на клиента WCF). Это упростит наш пример. Вы можете назвать эту ссылку TravelReservationService. Теперь вы готовы сконфигурировать действие InvokeWebService.
Настройте действие InvokeWebService так, чтобы оно вызывало прокси-класс, который был сгенерирован тогда, когда вы настраивали Web-ссылку. Для этого сделайте следующее:
1. Сначала выделите действие invokeTravelReservations и просмотрите его свойства.
2. Выделите свойство ProxyClass и настройте его в значение
TravelRequestWf. TravelReservationService. Reservation (оно ДОЛЖНО появиться в раскрывающемся списке).
3. Укажите для метода имя ReserveT ravel.
4. Используйте панель свойств для привязки параметра travelid к свойству TravelRequestid рабочего процесса. Сделайте то же самое и для возвращаемого значения метода. Привяжите его к свойству ConfirmationNumber.
Ваша конфигурация должна выглядеть так, как показано на рис. 20.13.