У меня есть веб-служба WCF, которая принимает некоторые пользовательские объекты и несколько документов, отправляемых в виде байтовых массивов.
Но каждый раз, когда я отправляю документ (не особо большой), WS возвращает 400 неверных запросов, и в журнале трассировки он выдает MaxReceivedMessageSizeExceeded
.
говоря
System.ServiceModel.ProtocolException:
Максимальная квота размера сообщения для
входящих сообщений (65536) было
превышены. Чтобы увеличить квоту, используйте
свойство MaxReceivedMessageSize на
соответствующий обязательный элемент.
Теперь клиентское приложение имеет это в app.config
<wsHttpBinding>
<binding name="WSHttpBinding_IReferrals"
closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00"
bypassProxyOnLocal="false" transactionFlow="false"
hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"
messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true"
allowCookies="false">
<readerQuotas maxDepth="32"
maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
а в WCF web.config
у меня есть
<service behaviorConfiguration="WCFReferrals.Service1Behavior"
name="WCFReferrals.Referrals">
<endpoint address="" binding="wsHttpBinding" contract="WCFReferrals.IReferrals">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="wsHttpBinding" contract="IMetadataExchange" />
</service>
....
<binding name="wsHttpBinding" maxBufferPoolSize="2147483647"
maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32" maxStringContentLength="2147483647"
maxArrayLength="2147483647" maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
</binding>
Очевидно, что я что-то упускаю, насколько я вижу, у меня есть все максимальные пределы сообщений, установленные waaaaay сверх того, что необходимо ..
Любая помощь будет с радостью принята
спасибо
нац