readerQuotas是什么 - > maxStringContentLength正好引用?

时间:2013-05-11 19:46:11

标签: .net wcf limit maxstringcontentlength readerquotas

我已在msdn上读到WCF客户端的readerQuotas属性maxStringContentLength意味着:

  

一个正整数,指定允许的最大字符数   XML元素内容。默认值为8192。

我在这里可能有点厚,但是在说XML元素内容时他们到底指的是什么?这是一个XML元素中的内容吗?它会包含任何嵌套的子元素吗?或者只是没有嵌套元素的每个元素的限制?

E.g。在以下结构中:

<a>
 <b>baap</b>
 <c>beep</c>
</a>

如果baap和嘟嘟声一起超过限制,会标记导致maxStringContentLength溢出的原因吗?或者如果他们各自的内容超过限制,只会b或c导致一个?或者我完全错过了什么?

全部谢谢!

1 个答案:

答案 0 :(得分:1)

From the MSDN

  

<强> MaxStringContentLength   此配额限制了最大字符串大小   XML阅读器返回。此配额不限制内存消耗   在XML阅读器本身,但在使用的组件中   读者。例如,当DataContractSerializer使用阅读器时   使用MaxStringContentLength保护,它不会反序列化字符串   大于此配额。使用XmlDictionaryReader类时   直接,并非所有方法都尊重此配额,而只是方法   专为读取字符串而设计的,例如   ReadContentAsString方法。读者的Value属性不是   受此配额影响,因此不宜在使用时使用   保护这个配额是必要的。

它限制返回的字符串的最大大小,XML字符串或返回字符串的方法。