Ориентированные на сервис приложения

Оценить
(0 голоса)
Когда вы щелкаете по названию Web-метода (см. рис. 19.7), то ASP.NET генерирует для вас Web-форму для тестирования данного метода Web-сервиса. Доступ к этой форме можно получить через asmx-файл с параметром QueryString, равным ор (от англ. operation). Вы передаете в этот параметр название Web-метода. Например, рассмотрим Web-метод GetCustomerProf ile. Эта Web-форма показана на рис. 19.8. Верхняя часть формы позволяет вам вводить параметры для Web-метода, а затем вызывать фактический Web-метод при помощи команды POST протокола HTTP. Этот протокол явля­ется всего лишь одним из способов вызова Web-метода. Вспомните, что вы используете также и SOAP. На этой странице показаны реальные примеры запроса и ответа…
Оценить
(0 голоса)
Для вызова Web-метода вы вводите значения параметров и нажимаете кнопку Invoke (см. рис. 19.8). При этом Web-сервис выполняется, и возвращаются результаты. Результаты от­правляются обратно как XML. Помните, что этот вызов — это HTTP POST. На рис. 19.9 показаны результаты из примера. Примечание Вы можете использовать этот метод только для вызова тех Web-методов, которые принимают в качестве параметров простые (примитивные) типы данных. Если ваш Web-метод принимает сложный тип (например, SaveCustomer), то вы по-прежнему сможете видеть примеры запросов/ответов, но не сможете вызвать Web-метод таким способом.
Оценить
(0 голоса)
Web-сервис можно использовать при помощи любого клиента, который способен вызывать сервис и управлять его результатами. Visual Studio облегчает эту задачу. Она позволяет вам настроить сервисную ссылку на любой сервис. Этот процесс аналогичен настройке ссылки на другую библиотеку .NET или компонент СОМ. После описания такой сервисной ссылки Visual Studio генерирует локальный класс прокси для использования сервиса. Это позволяет вам программировать при помощи класса прокси и не беспокоиться о написании кода сер­виса. Служебные ссылки можно настроить внутри почти любого приложения .NET, в том числе Windows Forms, WPF, консольных приложений и т. д. Давайте же рассмотрим этот процесс.
Оценить
(0 голоса)
Определите сервисную ссылку для вашего проекта при помощи выбора опции Add Service Reference из контекстного меню данного проекта. При этом откроется диалоговое окно Add Service Reference. Используйте это диалоговое окно для перехода к сервису и добавления этого сервиса в качестве ссылки. По сравнению с предыдущими версиями Visual Studio это диалоговое окно переделано. Оно объединяет все сервисные ссылки (включая Web-сервисы ASP.NET и созданные на основе WCF). На рис. 19.10 показан начальный экран диалогового окна Add Service Reference. Здесь вы можете ввести URI-адрес вашего сервиса или нажать кнопку Discover для поиска уже существующих в вашем решении сервисов. После обнаружения сервисов их можно…
Оценить
(0 голоса)
Теперь вы можете программировать прокси сервиса, который был сгенерирован для вас. Вы мо­жете также увидеть сгенерированный код. В Solution Explorer выберите опцию Show All Files. Затем перейдите в каталог Service References. Здесь вы можете увидеть ссылку CustomerProfileService. На рис. 19.13 показано все это вместе с открытым в редакторе классом прокси сервиса. Класс прокси — это класс С#, который представляет сервис. На­значение этого класса— инкапсуляция и абстрагирование подробностей вызова данного сервиса. Это позволяет разработчикам работать с сервисом точно так же, как они работают с любым другим компонентом или классом .NET. Класс прокси содержит методы (которые имитируют Web-методы) и объекты (которые используются…
Оценить
(0 голоса)
Вы можете вызвать Web-сервис точно так же, как и любой другой класс .NET. Эта возмож­ность имеется благодаря классу прокси, который был для вас сгенерирован. Однако от вас требуется некоторое понимание WCF, поскольку сгенерированный прокси основан на этой технологии. Мы опишем WCF в следующем разделе. Пока же мы сосредоточимся на создании клиента SOAP для CustomerProfileService. Для этого сделайте ссылку на пространство имен CustomerProfileService, а затем создайте новый экземпляр класса CustomerProfileSoapClient: CustomerProfileService.CustomerProfileSoapClient cp = new CustomerProfileService.CustomerProfileSoapClient (); Этот класс даст вам доступ к Web-методам GetCustomerProfile, DeleteCustomer и Sa- veCustomer (через прокси). Для подключения этих методов к приложению CustomerManager мы создадим форму, которая…
Оценить
(0 голоса)
К счастью, в спецификации SOAP описано, как при помощи этого протокола исключитель­ное состояние можно передать через Интернет. Эти исключения могут быть исключитель­ными состояниями бизнес-логики или сгенерированными в .NET при обработке вызова. Здесь важно то, что если вы надлежащим образом обернете эти исключения, то клиент дол­жен суметь понять, как ими управлять. .NET предоставляет объект SoapException для обертывания исключения с целью передачи его через SOAP. Этот класс имеет несколько параметров, которыми вы, возможно, не при­выкли пользоваться при работе с исключениями. □    Message — используется для указания описательного сообщения для исключения. Если вы передаете через SOAP стандартное исключение .NET, то можете установить свойст­во…
Оценить
(1 голос)
Подобно Web-сервисам, сервисы Windows Communication Foundation (WCF) имеют собст­венный набор терминов. Важно понимать эти термины при обсуждении ключевых концеп­ций приложений сервисов WCF. Эти ключевые термины сервисов WCF перечислены в сле­дующем списке. Примечание Для работы с WCF понимать все эти термины не обязательно. Однако при создании или настройке этих сервисов полезно иметь о терминах хотя бы поверхностное пред­ставление. □    WCF Service (сервис WCF) — это логика, которую вы предоставляете многочисленным клиентам в виде сервиса. Сервис может иметь одну или несколько операций (методов). Сервис WCF предоставляется клиентам через одну или несколько конечных точек, ко­торые определяете вы. Каждая конечная точка имеет привязку и…
Оценить
(0 голоса)
Вы можете использовать Visual Studio для создания проекта сервиса WCF аналогично тому, как вы описываете другие проекты. Выбор File | New | Project приведет к открытию диало­гового окна Add New Project. Здесь вы можете выбрать узел WCF под языком C# или Visual Basic. Это позволит вам выбрать шаблон проекта сервиса WCF (рис. 19.16). В этом диалоге вы можете задать имя сервиса и местонахождение его кода. Обратите внимание, что здесь имеется несколько шаблонов сервисов WCF. Эти шаблоны позволяют вам создавать сервисы WCF под ваши конкретные запросы. Есть два шаблона для рабочих процессов Windows: Sequential Workflow Service Library и State Machine Workflow…
Оценить
(0 голоса)
Теперь, когда вы знакомы со стандартным шаблоном проекта сервиса WCF, пришло время изучить создание сервиса WCF при помощи Visual Studio 2008. Для примера разработаем WCF-версию сервиса CustomerProfile, который мы уже создали ранее в разделе Web-сервисов. Подобно тому сервису, данный сервис будет обращаться к объекту Customer, описанному в библиотеке BusinessEntities (см. листинг 19.1), а также коду реализации EntityServices (см. листинг 19.2). В последнем имеются методы для получения информации 0    клиенте из хранилища данных и для сохранения изменений этой информации. Вот те ша­ги, которые необходимо сделать для того, чтобы реализовать такую функциональность в виде сервиса WCF: 1.   Начните с создания нового проекта…
© 2018 www.visualstudios.ru. Все права защищены.