'

WCF-службы Создание и тестирование .dll-библиотеки WCF-служб

Понравилась презентация – покажи это...





Слайд 0

ДонНУ, кафедра КТ, проф.В.К.Толстых WCF-службы Создание и тестирование .dll-библиотеки WCF-служб Из цикла лекций «Internet-технологии разработки приложений» для студентов 4-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета проф. В. К. Толстых


Слайд 1

Хостинг служб WCF Каждая служба WCF должна находится под управлением некоторого процесса Windows, называемого хостовым процессом. Существуют 4 типа хостинга: Резидентное размещение в управляемом приложении .NET (со своим экземпля-ром класса ServiceHost); Размещение в виде управляемой службы Windows; Размещение в IIS; Размещение в службе активации Windows – WAS (Windows Server 2008, Vista) По умолчанию, в Visual Studio для тестирования предоставляется хостинг типа 1 посредством «WCF Service Host» (WcfSvcHost.exe). Тестировать размещённую службу можно через клиент «WCF Test Client» (WcfTestClient.exe) или через собственных клиентов. Алгоритм тестирования служб WCF: Создание служб на основе проекта WCF Service Library в среде Visual Studio, Visual Studio – F5 – построение службы и загрузка WcfSvcHost.exe, WcfTestClient.exe, Отладка операций службы при помощи WcfTestClient.exe, Подготовка хостинга службы на WcfSvcHost.exe (без Visual Studio), Построение специализированного клиента службы (не WcfTestClient.exe), Добавление ссылки на службу и создание прокси-класса в клиенте, Тестирование и настройка специализированного клиента.


Слайд 2

Создание библиотеки службы на основе проекта WCF Service Library Построение части рабочего процесса (последовательного) в виде WCF службы Построение части рабочего процесса (основанного на состояниях) в виде WCF службы Построение RSS потоков через WCF службу


Слайд 3

Интерфейс для операций службы Реализация операций службы Хостовый процесс для службы Операции службы Реализация службы Имя службы


Слайд 4

Интерфейс службы - Контракт


Слайд 5

Конфигурация службы - App.config Имя службы Описание рабочей конечной точки : – адрес, – привязка, – контракт Описание конечной MEX-точки для обмена метаданными Обмен метаданными через HTTP-GET (не через MEX-точку) Базовый адрес необходимо указывать явно при резидентном размещении службы (в данном случае - через WcfSvcHost.exe)


Слайд 6

Свойства проекта Реализует запуск проекта библиотеки в хостовом процессе WcfSvcHost.exe с параметром /client:WcfTestClient.exe


Слайд 7

F5 – построение проекта и запуск тестирования 1. В каталоге Debug появилась компилированная библиотека .dll служб 2. Автоматический запуск хостового процесса и тестового клиента…


Слайд 8

Хостовый узел WcfSvcHost и клиент WcfTestClient На хостовом узле WcfSvcHost запущена служба Service1 библиотеке WsfServiceLibrary Операции службы (двойной щелчок) Параметры запроса операции GetData() Ответ операции GetData() Контракт конечной точки службы Service1 Тестируемая служба Service1 с адресом её метаданных Адрес метаданных службы можно скопировать


Слайд 9

Работа с WcfSvcHost.exe и WcfTestClient.exe вне Visual Studio Добавляем адрес WcfSvcHost.exe и WcfTestClient.exe в системную переменную PATH (чтобы далее не указывать путь к ним): Мой компьютер – Свойства – Дополнительно – Переменные среды – Path – Изменить – через точку с запятой добавить путь C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE Открываем командную строку и устанавливаем текущий каталог нашей WCF-библиотеки, запускаем хостовый процесс WcfSvcHost.exe для построенной (.dll) службы с параметрами /service:bin/Debug/WcfServiceLibrary1.dll /config:App.config Теперь тестовый хостинг запущен, можно подключать клиентов к службе При желании, вместе с хостовым процессом, можно запустить и тестового клиента: /service:bin/Debug/WcfServiceLibrary1.dll /config:App.config /client:WcfTestClient.exe


Слайд 10

Построение клиентов для служб WCF Клиент должен знать, где находится служба, использовать ту же привязку, что и служба, т.е., клиентское приложение должно содержать информацию о конечных точках службы (иметь контракт службы). Для вызова операций службы клиент должен сначала импортировать контракт службы в родное представление своей среды при помощи посредника – прокси-класса для общения с WCF-службой. Посредник предоставляет те же операции, что и контракт службы, но при этом содержит дополнительные методы для управления жизненным циклом и подключением к службе. Visual Studio позволяет просто импортировать метаданные службы и генерировать посредника. После построения посредника клиент может прямо обращаться к операциям (методам) службы.


Слайд 11

Построение ASP.NET-клиента для WCF-службы Запускаем хостинг со службой (если она ещё не запущена). Копируем адрес метаданных


Слайд 12

Добавление ссылки на службу и построение прокси-класса для клиента Вставляем скопированный адрес метаданных и нажимаем Go Кнопка для поиска служб внутри проекта Доступные конечные точки службы Service1 Пространство имён в котором будет создан прокси-класс Операции службы Service1 Доступ к метаданным через MEX-точку:


Слайд 13

Программирование клиента В приложение была добавлена ссылка на службу Прокси-класс для взаимодействия со службой (к имени службы добавлено слово Client)


Слайд 14

Результат работы


Слайд 15

Файл конфигурации ASP.NET приложения (Web.config) с информацией о конечной точке для службы


Слайд 16

Источники Джувел Лёве. Создание служб Windows Communication Foundation. – СПб.: Питер, 2008 . – 592 с.: ил. http://msdn.microsoft.com


×

HTML:





Ссылка: