Поделиться через


Модель кода для доступа к веб-службам в управляемом коде

Обновлен: Ноябрь 2007

Клиенты веб-службы — это компоненты, службы и приложения, ссылающиеся на веб-службу и использующие ее. Обратите внимание, что это не обязательно клиентские приложения, такие как приложения для настольного компьютера; во многих случаях клиентами веб-службы могут быть другие веб-приложения или даже другие веб-службы.

При обращении к веб-службам в управляемом коде за весь код инфраструктуры отвечает прокси-класс и платформа .NET Framework. Обращение к веб-службе состоит из следующих основных этапов:

  • Перейдите к веб-службе, к которой требуется обратиться;

  • Создайте класс прокси для веб-службы, добавив веб-ссылку в проект;

  • Создайте ссылку на класс прокси в коде клиента, включив в проект его пространство имен;

  • Создайте экземпляр класса прокси веб-службы в коде клиента;

  • Обратитесь к веб-службе, используя методы прокси.

Дополнительные сведения см. в разделе Практическое руководство. Получение доступа к веб-службам в управляемом коде или Практическое руководство. Асинхронный доступ к веб-службе в управляемом коде.

Поиск веб-службы и добавление веб-ссылки

Для упрощения модели кодирования в приложениях, написанных в управляемом коде, используются веб-ссылки, служащие для локального представления каждой используемой веб-службы. Веб-ссылка добавляется в проект с помощью диалогового окна "Добавление веб-ссылки". Это диалоговое окно поддерживает просмотр веб-адресов в поисках веб-службы. Дополнительные сведения см. в разделах Обнаружение веб-служб и Веб-ссылки.

Ссылка на класс прокси

Созданный класс прокси находится в собственном пространстве имен, которое необходимо добавить в клиентское приложение перед созданием экземпляра этого класса. Дополнительные сведения см. в разделе Директива using (C#) или Ссылки и оператор Imports (Visual Basic .NET).

Создание экземпляра класса прокси

Перед вызовом методов класса прокси необходимо создать экземпляр этого класса. Этот процесс не отличается от создания экземпляра любого другого класса. Дополнительные сведения см. в разделах Оператор new (C#) или Объявление переменной объекта (Visual Basic .NET).

Обращение к веб-службе с использованием прокси

Для обращения к методу веб-службы клиентские приложения вызывают либо синхронный, либо асинхронный метод прокси-объекта. Эти методы, в свою очередь, выполняют необходимые действия, выполняя удаленный вызов нужного метода веб-службы. По умолчанию классы прокси используют для доступа к методам веб-служб протокол SOAP, так как он поддерживает наиболее обширный набор типов данных из всех трех поддерживаемых протоколов (HTTP-GET, HTTP-POST и HTTP-SOAP). Дополнительные сведения см. в разделе XML Web Service Wire Formats.

Сводная информация

Благодаря классам прокси, которые создаются в Visual Studio непосредственно по описаниям веб-служб, работа с веб-службами в управляемом коде становится относительно простым делом. Класс прокси проводит всю работу по преобразованию вызова метода в сообщение запроса и ответного сообщения в значение, возвращаемое методу.

На приведенном ниже рисунке показано приложение, которое вызывает веб-службу, которая, в свою очередь, вызывает другую веб-службу для получения информации о ценах. В этом примере веб-служба Get Current Prices (Получить текущие цены) является как поставщиком услуг, так и получателем аналогичных услуг.

Веб-службы и их клиенты
Клиенты веб-служб с анимацией

См. также

Основные понятия

Building XML Web Service Clients

Другие ресурсы

Доступ к веб-службам в управляемом коде