Локальный канал
Локальный канал — это транспортный канал Windows Communication Foundation (WCF), используемый для обмена данными в одном домене приложения. Это полезно в случаях, когда клиент и служба работают на одном домене приложения и требуется избежать увеличения расхода ресурсов типичного WCF-канала (сериализация и десериализация сообщений).
Обсуждение
Пример LocalChannel состоит из двух файлов проекта:
LocalChannel: программное представление локального канала в текущем домене приложения. В этом проекте отправляющий модуль размещает сообщение в очереди памяти, а получающий модуль выводит его из очереди, получая сообщение.
ClientAndService: этот проект размещает службу в консольном приложении, а затем запускает клиент для вызова службы из одного домена приложения.
Конструктор локального канала пропускает стек каналов и процесс сериализации для увеличения скорости. Локальный канал транспорта реализуется при помощи очереди, которая используется для переноса вызовов службы от клиента к службе и возвращения значения клиенту. Вместо сериализации параметров и возвращения значений образец копирует объекты.
Настройка, сборка и выполнение образца
Постройте и запустите решение LocalChannel.
Запускается узел службы, клиент вызывает службу при помощи локального канала. Появляется окно консоли, в котором отображаются результаты вызова службы.