Глоссарий Windows Communication Foundation для .NET Framework 4.5

Для документации по Windows Communication Foundation определяются следующие термины.

Термины

Термин Определение
address Задает расположение, где принимаются сообщения. Он задается в виде универсального кода ресурса (URI). Часть URI, определяющая схему, задает транспортный механизм для доставки по адресу, например HTTP и TCP. Иерархическая часть URI содержит уникальное расположение, формат которого зависит от транспортного механизма.
конечная точка приложения Конечная точка, предоставляемая приложением и соответствующая контракту службы, реализуемому приложением.
поведение Расширение функциональности представляет собой компонент, управляющий различными аспектами работы службы, конечной точки, определенной операции или клиента во время выполнения. Расширения функциональности группируются в соответствии с областью действия: общие расширения функциональности влияют глобально на все конечные точки, расширения функциональности служб влияют только на аспекты, относящиеся к службам, расширения функциональности конечных точек влияют только на свойства, относящиеся к конечным точкам, а расширения функциональности уровня операции влияют только на конкретные операции.
binding Определяет, какие протоколы связи используются для обмена данными со службами WCF. Привязка состоит из набора компонентов, называемых элементами привязки, которые располагаются друг над другом, образуя инфраструктуру связи. См. термин «конечная точка».
channel Конкретная реализация элемента привязки. Привязка представляет собой конфигурацию, а канал является реализацией, связанной с этой конфигурацией. Следовательно, с каждым элементом привязки связан канал. Каналы, собранные в стек друг на другом, образуют конкретную реализацию привязки: стек каналов.
безопасность на основе утверждений Организует санкционированный доступ к защищенным ресурсам на основе утверждений.
клиентское приложение Клиентское приложение — это программа, обменивающаяся сообщениями с одной или несколькими конечными точками. Клиентское приложение начинает работу с создания экземпляра клиента WCF и вызывает методы этого клиента WCF. Обратите внимание, что одно и то же приложение может быть как клиентом, так и службой.
кодировка Позволяет разработчику сохранить полный контроль над всеми компонентами службы или клиента; все настройки, выполненные с помощью конфигурации, можно проверить и, при необходимости, изменить с помощью кода. Управление приложением возможно с помощью кода, с помощью конфигурации или с помощью и того, и другого.
настройка Преимущество конфигурации заключается в том, что после написания кода параметры клиента или службы могут задаваться пользователями (например, системным администратором), а не только разработчиком, при этом отсутствует необходимость в повторной компиляции. Конфигурация не только позволяет задавать значения, такие как адреса конечных точек, но и обеспечивает дополнительные возможности управления, позволяя добавлять конечные точки, привязки и расширения функциональности. Управление приложением возможно с помощью конфигурации, с помощью кода или с помощью и того, и другого.
contract Контракт представляет собой спецификацию поддержки для определенного типа контракта. Например, контракт службы представляет собой спецификацию для группы операций. В WCF контракты имеют иерархию, которая отражается в описании объектов, находящихся в пространстве имен System.ServiceModel.Description. Контракт службы - это самая большая область контрактов в WCF. Для каждой операции службы в контракте службы предусмотрен контракт операции, задающий сообщения (включая сообщения об ошибках), которыми может обмениваться операция, а также направление передачи этих сообщений. У каждого сообщения в операции имеется контракт сообщения - спецификация структуры конверта сообщений SOAP, а в каждом контракте сообщения имеется контракт данных, задающий структуры данных, содержащихся в сообщении.
контракт данных Типы данных, используемых службой, должны быть описаны в метаданных для обеспечения возможности взаимодействия с этой службой. Описания типов данных называются контрактом данных, и эти типы могут использоваться в любой части сообщения, например в качестве параметров или возвращаемых типов. Если в службе используются только простые типы, явное использование контрактов данных не требуется.
декларативное приложение Приложение, описанное достаточно для создания во время выполнения без выполнения императивных инструкций.
endpoint Состоит из адреса, привязки и контракта, используемого для связи со службой WCF.
адрес конечной точки Позволяет создавать уникальные адреса для каждой конечной точки в службе или при определенных условиях использовать один адрес для нескольких конечных точек.
контракт сбоя Контракт сбоя может быть связан с операцией службы для обозначения ошибок, которые могут возвращаться вызывающему объекту. С операцией могут быть связаны ноль или более сбоев. Эти ошибки представляют собой сбои протокола SOAP, которые моделируются в модели программирования как исключения. Исключение преобразуется в сбой протокола SOAP, который затем может передаваться клиенту.
размещение Служба должна быть размещена в некотором процессе. Ведущее приложение - это приложение, контролирующее время существования службы. Службы могут быть резидентными (размещенными сами в себе) или управляемыми существующим ведущим процессом.
ведущий процесс Ведущий процесс — это приложение, предназначенное для размещения служб. В число таких приложений входят службы IIS, службы активации Windows (WAS) и службы Windows. В этих сценариях ведущее приложение контролирует время существования службы. Например, с помощью IIS можно создать виртуальный каталог, содержащий сборку службы и файл конфигурации. При получении сообщения IIS запускает службу и контролирует время ее существования.
инициирующая операция Операция, которая вызывается как первая операция нового сеанса. Неинициирующие операции могут вызываться только после вызова по крайней мере одной инициирующей операции.
модель создания экземпляров Со службой связана модель создания экземпляров. Существуют три модели создания экземпляров: "один экземпляр", в которой один объект CLR обслуживает всех клиентов, "по вызовам", в которой для обработки каждого вызова, поступившего от клиента, создается новый объект CLR, и "по сеансам", в которой создается набор объектов CLR, по одному на каждый отдельный сеанс. Выбор модели создания экземпляров зависит от требований к приложению и ожидаемого режима использования службы.
message Сообщение представляет собой замкнутую единицу данных, которая может состоять из нескольких частей, включая тело и заголовки.
контракт сообщения Контракт сообщения описывает его формат. Например, в нем описывается, должны элементы сообщения размещаться в заголовках или в теле, уровень безопасности, применяемый к определенным элементам сообщения и т. д.
режим безопасности сообщения Режим безопасности сообщения задает, что безопасность обеспечивается путем реализации одной или нескольких спецификаций безопасности. Каждое сообщение содержит необходимые механизмы, обеспечивающие безопасность во время его передачи и позволяющие получателям обнаруживать подделки и расшифровывать сообщения. В этом отношении безопасность заложена внутри каждого сообщения, обеспечивая сквозную безопасность по всем участкам передачи. Поскольку информация безопасности становится частью сообщения, в сообщение можно также включить несколько типов учетных данных (называемых утверждениями). Дополнительным преимуществом такого подхода является возможность безопасной передачи сообщения с помощью любого транспортного механизма, включая несколько транспортных механизмов между источником и назначением. К недостатком этого подхода относится сложность используемых криптографических механизмов, требовательных к производительности.
метаданные Метаданные службы описывают характеристики службы, которые необходимо знать внешней сущности для связи со службой. Метаданные могут считываться служебным средством ServiceModel Metadata Utility Tool (Svcutil.exe) для создания клиента WCF и сопутствующей конфигурации, которые могут использоваться клиентским приложением для взаимодействия со службой. Метаданные, предоставляемые службой, содержат документы схемы XML, определяющие контракт данных службы, и документы WSDL, описывающие методы службы. Если метаданные для службы включены, они автоматически создаются WCF путем проверки службы и ее конечных точек. Для публикации метаданных службы необходимо явно задать расширение функциональности метаданных.
контракт операции Контракт операции определяет параметры операции и тип возвращаемых ею значений. При создании интерфейса, определяющего контракт службы, контракт операции задается путем применения атрибута T:System.ServiceModel.OperationContractAttribute к определению каждого метода, входящего в контракт. Операции могут задаваться как получающие одно сообщение и возвращающие одно сообщение или как получающие набор типов и возвращающие тип. В последнем случае формат сообщений, обмен которыми происходит при выполнении данной операции, определяется системой.
проекция Представление данных во время передачи. Например, проекция SOAP отправляет сообщения в виде конвертов SOAP, а веб-проекция отправляет сообщения в формате JSON.
security Безопасность в WCF включает в себя конфиденциальность (шифрование сообщение во избежание их подслушивания), целостность (средства обнаружения подделки сообщения), проверку подлинности (средства проверки серверов и клиентов) и авторизацию (управление доступом к ресурсам). Эти функции предоставляются либо путем использования существующих механизмов обеспечения безопасности, таких как TLS по HTTP (также называемого HTTPS), либо путем реализации одной или нескольких различных спецификаций безопасности WS-*.
резидентная служба Под резидентной понимается служба, которая выполняется в приложении-процессе, созданном разработчиком. Разработчик контролирует время существования службы, набор свойств службы, открывает службу (при этом служба переходит в режим ожидания данных) и закрывает службу.
служба Программа или процесс, предоставляющие доступ к одной или нескольким конечным точкам, каждая из которых предоставляет доступ к одой или нескольким операциям.
контракт службы Контракт службы объединяет несколько связанных операций в один функциональный модуль. Контракт может определять параметры уровня службы, такие как пространство имен службы, соответствующий контракт обратного вызова и другие подобные параметры. В большинстве случаев контракт задается путем создания интерфейса на выбранном языке программирования и применения атрибута T:System.ServiceModel.ServiceContractAttribute к этому интерфейсу. Фактический код службы создается при реализации этого интерфейса.
операция службы Под операцией службы понимается процедура, определенная в программном коде службы и реализующая функциональность операции. Эта операция видима клиентам в виде методов клиента WCF. Метод может возвращать значение и может иметь ряд необязательных аргументов, либо может не иметь аргументов и не возвращать никаких значений. Например, операция, которая функционирует как "Hello", может использоваться в качестве уведомления о присутствии клиента и для начала ряда операций.
привязки, предоставляемые системой WCF содержит ряд привязок, предоставляемых системой. Они являются коллекциями элементов привязки, оптимизированными для конкретных сценариев. Например, привязка T:System.ServiceModel.WSHttpBinding предназначена для работы со службами, реализующими различные спецификации WS-*. Эти привязки экономят время, предоставляя только те параметры, которые могут быть правильно применены для конкретных сценариев. Если какая-то из этих привязок не удовлетворяет вашим требованиям, можно создать собственную настраиваемую привязку.
завершающая операция Операция, которая вызывается как последняя операция существующего сеанса. В случае по умолчанию WCF повторно использует объект службы и его контекст после закрытия сеанса, с которым была связана эта служба.
режим безопасности транспорта Безопасность может обеспечиваться одним из трех режимов: режимом транспорта, режимом безопасности сообщения и режимом транспорта с учетными данными сообщения. Режим безопасности транспорта задает, что конфиденциальность, целостность и проверка подлинности предоставляются механизмами транспортного уровня (такими как HTTPS). При использовании такого транспорта, как HTTPS, преимущества этого режима заключаются в его эффективной производительности и хорошей известности в связи с преобладающим применением в Интернете. Недостаток заключается в том, что безопасность этого типа применяется отдельно на каждом прыжке пути передачи, в результате чего связь становится чувствительной к атакам типа "злоумышленник в середине".
режим безопасности транспорта с учетными данными сообщения В этом режиме для обеспечения конфиденциальности, проверки подлинности и целостности сообщений используется транспортный уровень, но каждое сообщение может содержать несколько учетных данных (утверждений), требуемых получателями сообщения.
преобразователь типов Тип CLR можно связать с одним или несколькими типами, производными от System.ComponentModel.TypeConverter, которые позволяют преобразовывать экземпляры типа CLR в объекты других типов и обратно. Преобразователь типов связан с типом CLR с помощью атрибута System.ComponentModel.TypeConverterAttribute. Атрибут TypeConverterAttribute можно указывать непосредственно в типе CLR или в свойстве. Преобразователь типов, указанный в свойстве, всегда имеет приоритет над преобразователем типов, указанным в типе CLR этого свойства.
клиент WCF Клиент WCF представляет собой конструкцию клиент-приложение, предоставляющую операции службы в виде методов (на выбранном вами языке программирования платформы .NET Framework, например Visual Basic или Visual C#). Каждое приложение может содержать клиента WCF, включая приложение, содержащее службу. Следовательно, можно создать службу, содержащую клиентов WCF других служб. Клиент WCF может быть создан автоматически путем использования служебного средства ServiceModel Metadata Utility Tool (Svcutil.exe) и нацеливания его на работающую службу, публикующую метаданные.
службы рабочего процесса Служба рабочего процесса - это служба WCF, реализуемая в виде рабочего процесса. Рабочий процесс содержит действия обмена сообщениями, отправляющие и/или получающие сообщения WCF.
WS-* Сокращение для обозначения растущего набора спецификаций веб-служб (WS), таких как WS-Security, WS-ReliableMessaging и т. д., реализованных в WCF.
XAML Язык XAML
схема XAML Схема разметки, используемая для определения пользовательских типов в XAML.