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

Содержание

Хостинг служб WCF Каждая служба WCF должна находится под управлением некоторого процесса Windows, называемого хостовым процессом. Существуют 4 типа хостинга: Резидентное размещение в управляемом приложении .NET (со своим экземпля-ром класса

Слайд 1ДонНУ, кафедра КТ, проф.В.К.Толстых
WCF-службы Создание и тестирование .dll-библиотеки WCF-служб
Из цикла лекций

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

Слайд 2Хостинг служб 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),
Добавление ссылки на службу и создание прокси-класса в клиенте,
Тестирование и настройка специализированного клиента.


Слайд 3Создание библиотеки службы на основе проекта WCF Service Library
Построение части рабочего

процесса (последовательного) в виде WCF службы

Построение части рабочего процесса (основанного на состояниях) в виде WCF службы

Построение RSS потоков через WCF службу


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

службы

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


Слайд 6Конфигурация службы - App.config
Имя службы
Описание рабочей конечной точки :
– адрес,

– привязка, – контракт

Описание конечной MEX-точки для обмена метаданными

Обмен метаданными через HTTP-GET
(не через MEX-точку)

Базовый адрес необходимо указывать явно при резидентном размещении службы (в данном случае - через WcfSvcHost.exe)


Слайд 7Свойства проекта
Реализует запуск проекта библиотеки в хостовом процессе WcfSvcHost.exe
с параметром

/client:WcfTestClient.exe

Слайд 8F5 – построение проекта и запуск тестирования
1. В каталоге Debug появилась

компилированная библиотека .dll служб


2. Автоматический запуск хостового процесса и тестового клиента…



Слайд 9Хостовый узел WcfSvcHost и клиент WcfTestClient
На хостовом узле WcfSvcHost запущена служба


Service1 библиотеке WsfServiceLibrary

Операции службы (двойной щелчок)



Параметры запроса операции GetData()

Ответ операции GetData()


Контракт конечной точки службы Service1

Тестируемая служба Service1 с адресом её метаданных


Адрес метаданных службы можно скопировать


Слайд 10Работа с 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


Слайд 11Построение клиентов для служб WCF
Клиент должен знать, где находится служба, использовать

ту же привязку, что и служба, т.е., клиентское приложение должно содержать информацию о конечных точках службы (иметь контракт службы).

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

После построения посредника клиент может прямо обращаться к операциям (методам) службы.

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

запущена). Копируем адрес метаданных

Слайд 13Добавление ссылки на службу
и построение прокси-класса для клиента
Вставляем скопированный адрес

метаданных и нажимаем Go

Кнопка для поиска служб внутри проекта

Доступные конечные точки службы Service1


Пространство имён в котором будет создан прокси-класс

Операции службы Service1

Доступ к метаданным через MEX-точку:


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

службой (к имени службы добавлено слово Client)

Слайд 15Результат работы


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

службы

Слайд 17Источники
Джувел Лёве. Создание служб Windows Communication Foundation. – СПб.: Питер, 2008

. – 592 с.: ил.
http://msdn.microsoft.com


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика