В WCF 4.0+ понятие привязки по умолчанию и конечных точек была введена. Если вы создаете новое приложение службы WCF, например, из коробки без каких-либо изменений, вы получите конечную точку по умолчанию, которая будет прослушиваться в URI службы, используя basicHttpBinding
(привязка по умолчанию для http
).
Если вам нужны большие значения, чем значения по умолчанию для конфигурации связывания, у вас есть два варианта:
сделать привязку по умолчанию раздела конфигурации. Это делается путем исключения из атрибута name
связывания, например:
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding maxReceivedMessageSize="528880" />
</basicHttpBinding>
</bindings>
<system.serviceModel>
Примечания нет нет name
атрибута (другие атрибуты были опущены для целей иллюстрации). Указанная вами конфигурация будет использоваться по умолчанию для любого запроса, который приходит через http, и использует basicHttpBinding
.
Создать конфигурацию, как и в шаге 1, но используют атрибут name
, а затем присвоить, что конфигурацию связывания с явной конечной точки, используя атрибут bindingConfig
, например:
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="MyBinding" maxReceivedMessageSize="528880" />
</basicHttpBinding>
</bindings>
<services>
<service name="MyService">
<endpoint address="" bindingConfiguration="MyBinding" binding="basicHttpBinding" contract="MyService.IMyContract" />
</service>
</services>
<system.serviceModel>
Второй пример присвоит «MyBinding «конфигурация к определенной конечной точке.
Если вы хотите использовать что-то кроме basicHttpBinding
для http-запросов, то вы также можете изменить отображение протокола, как показано в ответе Нила.
Вы также можете проверить A Developer's Introduction to Windows Communication Foundation 4 для получения дополнительной информации по умолчанию привязок/конечных точкам/и т.д., введенных в WCF 4.0
Так я могу создать свой собственный связыванию с моими ограничениями размера сообщения и использовать эту protocolMapping для отображения все запроса НТТРА использовать мою привязку? – AndreiGolacov
Изменение привязки с по умолчанию 'basicHttpBinding' до' wsHttpBinding' само по себе не решит проблему. При желании вы можете определить свои собственные конфигурации для привязок, используя существующие привязки. WCF 4.0 упростил ситуацию с точки зрения конфигурации, но также ввел много путаницы. – Tim