Создание приложения клиента

Создание приложения клиента

Теперь, когда вы лучше понимаете внутреннюю композицию генерируемого агента, давайте попытаемся его использовать. Создайте новое консольное приложение с именем CalculatorClient, добавьте в проект файл proxy.cs с помощью выбора Project?Add Existing Item из меню и добавьте ссылку на компоновочный блок System.Web.Services.dll. Затем измените метод Main() так, как предлагается ниже.

class Program {

 static void Main(string[] args) {

  Console.WriteLine("***** Забавы c агентами WS ***** ");

  // Создание агента.

  CalculatorWebService ws = new CalculatorWebService();

  // Синхронный вызов метода Add().

  Console.WriteLine("10 + 10= {0}", ws.Add(10, 10));

  // Асинхронный вызов метода Subtract с помощью

  // нового подхода .NET 2.0 на основе событий.

  ws.SubtractCompleted += new SubtractCompleteEventHandler(ws_SubtractCompleted);

  ws.SubtractAsync(50, 45);

  // Продолжение работы консоли для гарантии получения

  // результата вычитания.

  Console.RеаdLine();

 }

 static void ws_SubtractCompleted(object sender, SubtractCompletedEventArgs e) {

  Console.WriteLine("Baш ответ: {0} ", e.Result);

 }

}

Обратите внимание на то, что новая логика асинхронного вызова в .NET 2.0 непосредственно отображается в синтаксис событий C#, который, согласитесь, является более аккуратным по сравнению с использованием методов BeginXXX()/EndXXX(), интерфейса IAsyncResult и делегата AsyncCallback.

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Создание расширяемого приложения

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

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


Создание распределенного приложения

Из книги Введение в OpenGL автора Компьютеры Автор неизвестен -

Создание распределенного приложения Ничто не принесет большей радости, чем создание реального распределенного приложения на новой платформе. Чтобы показать, как быстро можно создать и запустить приложение, использующее слой удаленного взаимодействия .NET, мы построим


Создание компоновочного блока клиента

Из книги Советы по Delphi. Версия 1.0.6 автора Озеров Валентин

Создание компоновочного блока клиента Теперь, когда у вас есть приемник, который будет обслуживать объекты уда-ленного доступа, остается создать компоновочный блок, который запросит доступ к соответствующим возможностям. Здесь снова создайте простое консольное


Создание компоновочного блока клиента

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П

Создание компоновочного блока клиента Наконец, рассмотрим приложение клиента, которое будет использовать MBR-тип CarProvider для получения отдельных типов JamesBondCars и типа List‹›. После получения типа от CarProvider вы посылаете его вспомогательной функции UseCar() для обработки.using


Создание MDI-приложения

Из книги Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT автора Фролов Александр Вячеславович

Создание MDI-приложения Чтобы завершить краткое знакомство с Windows Forms, давайте обсудим то, как настроить форму на работу в качестве родительского объекта для любого числа дочерних окон (т.е. в качестве MDI-контейнера). MDI-приложения дают пользователям возможность открывать


Создание приложения в среде MS Visual C++ 5.0

Из книги Программирование на языке Ruby [Идеология языка, теория и практика применения] автора Фултон Хэл

Создание приложения в среде MS Visual C++ 5.0 Перед началом работы необходимо скопировать файлы glut.h, glut32.lib glut32.dll в каталоги…MSVCIncludeGl,…MSVCLib,…WindowsSystem соответственно. Также в этих каталогах надо проверить наличие файлов gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, которые обычно входят в


Создание приложения в среде Borland C++ 5.02

Из книги Сетевые средства Linux автора Смит Родерик В.

Создание приложения в среде Borland C++ 5.02 Как и для Visual C++, сначала надо обеспечить наличие файлов glut.h, glut32.lib, glut32.dll в каталогах…BorlandCIncludeGl,…BorlandCLib,…WindowsSystem соответственно. Также в этих каталогах надо проверить наличие файлов gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, которые обычно


Создание приложения для просмотра данных

Из книги QT 4: программирование GUI на С++ автора Бланшет Жасмин

Создание приложения для просмотра данных В предыдущем примере показан простейший способ связывания данных на основе извлечения всей таблицы и отображения ее в элементе управления DataGrid. А как отобразить только одну запись? Для этого потребуется использовать элементы


Создание приложения средствами MFC AppWizard

Из книги автора

Создание приложения средствами MFC AppWizard Во второй главе книги мы рассматривали приложение MFDialog, которое не имеет главного окна. Вместо окна это приложение использует обыкновенную диалоговую панель. Сейчас мы расскажем вам как создать приложение, подобное MFDialog, не набрав


Создание резервной копии клиента Windows с помощью сервера Linux

Из книги автора

Создание резервной копии клиента Windows с помощью сервера Linux Резервное копирование, инициализируемое сервером, с применением Samba осуществляется почти так же, как и копирование по инициативе сервера с использованием NFS, но работа с продуктом Samba и системой Windows имеет ряд


Создание приложения для смартфона

Из книги автора

Создание приложения для смартфона В главе 7 уже создавался проект, рассчитанный на работу с смартфоном. Мы тогда немного забежали вперед. Настало время вернуться к истокам и начать изучение с самого начала.Запустите Visual Studio 2005 для создания нового проекта. Надо выбрать тип


Создание приложения без формы

Из книги автора

Создание приложения без формы В некоторых случаях необходимо иметь приложение, которое, запустившись, не выводит на экран форму или вообще не имеет и не создает форм. Создать такое приложение очень просто. Эта технология рассматривается в следующем