旁注:即使问题是几个月前发布的,我仍在寻找一个好的答案,因此欢迎任何反馈。
在开发 WCF Web 服务时,我遇到了错误:
The maximum array length quota (16384) has been exceeded while reading XML data.
像许多其他人一样,并通过修改绑定配置解决了这个问题。
在互联网上寻找答案时,解决方案几乎总是更改绑定配置,将设置设置maxArrayLength
为最大值,然后进行Streamed
传输。在某些情况下,例如在WCF 发送大数据这个问题中,人们建议修改绑定配置,而不是以较小的块传输数据。
但是最大值和流传输将始终有效吗?即使在您可能永远不知道数据的最大大小是多少的系统中?
如何在这两个选项之间进行选择?
这取决于你转移什么?下载媒体与返回大型日志信息?
到目前为止,给我的答案围绕着流媒体的技术方面,但我正在寻找的答案应该更多地关注所暴露情况下的指导方针,关于在两个选项之间进行选择。