У меня есть веб-служба WCF, которая размещается в .svc-файле ASP.NET. .svc содержит следующую конфигурацию:Конфигурация WCF для хоста .svc на ASP.NET
<%@ ServiceHost Language="C#" Debug="true" Service="assembly.IPriceListProvider, assembly" Factory="Autofac.Integration.Wcf.AutofacServiceHostFactory, Autofac.Integration.Wcf" %>
web.config содержит конфигурацию WCF. Здесь идет конфигурация привязки:
<binding name="basicHttpBinding_PriceListProvider" maxBufferSize="10485760"
maxReceivedMessageSize="10485760">
<readerQuotas maxArrayLength="16384000" />
</binding>
Чтобы проверить обслуживание, я нажимаю на .svc-файл и нажимаю F5. Открывается тестовый клиент WCF. Но конфигурация изменилась. Значения, которые я явно определил, имеют значения по умолчанию:
<binding name="basicHttpBindingEndPoint_PriceListProvider" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
**maxBufferSize="65536"** maxBufferPoolSize="524288" **maxReceivedMessageSize="65536"**
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" **maxArrayLength="16384"**
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
Почему изменяется конфигурация? Как сохранить исходные значения?
Я слышал что-то об упрощенной конфигурации .svc: привязка по умолчанию для .svc настроена, даже если вы не укажете ее явно в web.config. Может ли это так?
Есть ли способ распространить конфигурацию моего сервера на клиента? –
Мне жаль, что я не знаю, как использовать такие параметры конфигурации сервиса для конфигурации клиента. Я всегда устанавливаю значения программно на стороне клиента. –