【问题标题】:Exception in returning Generic List from WCF从 WCF 返回通用列表的异常
【发布时间】:2010-08-07 02:25:39
【问题描述】:

您好,我遇到了奇怪的问题,

我有一个通用列表List<Accounts>,它是从数据库中填充的,然后这个列表将返回给客户端。

当列表包含超过 3000 个项目时,它会抛出异常。

我在web.config中设置了以下值

maxDepth="2147483647" 
maxStringContentLength="2147483647" 
maxArrayLength="2147483647" 
maxBytesPerRead="2147483647" 
maxNameTableCharCount="2147483647" 

【问题讨论】:

  • 您收到什么异常?
  • 您很有可能只是遇到了超时问题。尝试将客户端和服务器上的绑定超时设置为高于 1 分钟(这是默认值)
  • 不要忘记 DataContractBehavior 的 maxItemsInObjectGraph。

标签: c#


【解决方案1】:

正如 Kirk 所说,尝试在您的配置中添加类似于以下的行为:

<behaviors>
<endpointBehaviors>
<behavior name="MyService.MyServiceBehavior">
 <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
</behavior>
</endpointBehaviors>
</behaviors>

如果这对你有用,那么不要将我标记为正确,柯克,你添加一个答案,我会删除这个

【讨论】:

    【解决方案2】:

    您可以尝试以下一些解决方案:

    • 您很有可能遇到超时问题。尝试将客户端和服务器上的绑定超时设置为高于 1 分钟(这是默认值)。
    • 在 DataContractBehavior 中增加 maxItemsInObjectGraph。

    否则,请编辑您的问题以包含有关您获得的异常的信息以及任何其他可能相关的信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-02
      • 2010-12-28
      • 1970-01-01
      • 1970-01-01
      • 2013-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多