WCF服务 - MaxReceivedMessageSize错误

时间:2010-01-08 10:20:49

标签: wcf

我在Windows服务中托管了我的WCF服务。客户端应用程序是我添加服务引用的网站项目。

现在,Windows服务配置文件具有MaxReceivedMessageSize的正确设置:

  <netTcpBinding>
    <binding name="netTcp" maxBufferPoolSize="50000000" maxReceivedMessageSize="50000000">
      <readerQuotas maxDepth="500" maxStringContentLength="50000000" maxArrayLength="50000000"
                    maxBytesPerRead="50000000" maxNameTableCharCount="50000000" />
      <security mode="None"></security>
    </binding>
  </netTcpBinding>

但是当我向WebSite项目添加服务引用时,它会使用默认值更新web.config。然后我收到此错误: 已超出传入邮件的最大邮件大小限额(65536)。要增加配额,请在相应的绑定元素上使用MaxReceivedMessageSize属性。

我估计,使用服务congig中的设置更新网站配置文件将解决此错误。

但是我想知道每次添加服务引用时是否需要手动更改这些设置?

1 个答案:

答案 0 :(得分:3)

不幸的是,在添加服务引用时,服务器的设置将不会传输到客户端。你必须手动设置它们。

您可以使用“更新服务参考”菜单命令而不是始终创建新的服务参考。这可能会保留您的设置(不确定 - 我自己从不使用它)。