2017-02-15 12 views
0

при создании сервиса WCF RESTful, часть конфигурации включает создание конечной точки службы. Что-то вроде нижеЧто такое контракт в webhttpbinding endpoint?

<service name="MyService" behaviorConfiguration="serviceBehavior"> 
    <endpoint address="" binding="webHttpBinding" bindingConfiguration="UsernameWithTransport" contract="IMyService" behaviorConfiguration="web"></endpoint> 
    </service> 

Мой вопрос, что именно является contract при условии, что для? Предоставляет ли она какую-либо информацию браузеру, который пытается получить к ней доступ?

+1

Прочтите https://msdn.microsoft.com/en-us/library/aa702732(v=vs.110).aspx – Rajesh

ответ

0

В WCF Контракт (ContractDescription) представляет собой набор операций, который определяет, что конечная точка связывается с внешним миром. Каждая операция - обмен сообщениями. Например, сообщение запроса и связанное с ним ответное сообщение формируют обмен сообщениями запрос/ответ.

Объект ContractDescription используется для описания контрактов WCF и их операций. В разделе «Контрактное обозначение» каждая операция контракта имеет соответствующее OperationDescription, которое описывает аспекты каждой операции, которая является частью контракта, например, является ли операция односторонней или запросом/ответом. Каждый OperationDescription также описывает сообщения, которые составляют операцию с помощью MessageDescriptionCollection. ContractDescription содержит ссылку на интерфейс, который определяет контракт с использованием модели программирования. Этот интерфейс отмечен ServiceContractAttribute, и его методы, соответствующие операциям с конечными точками, отмечены с помощью OperationContractAttribute.

Контракт также важен, поскольку вы можете предоставить отдельные контракты на обслуживание в одной службе WCF.