虽然没有最大值,但您可能遇到问题Metadata Exchange- 以及以下配置值,它是默认值:maxNameTableCharCount.
在尝试向现有功能添加新功能时WCF Service,我在尝试" 更新服务引用 "时遇到了错误- 与默认值maxNameTableCharCount太小而无法处理mex传输大小.
可以Metadata Exchange通过mex binding在服务器配置中添加自定义来覆盖默认值.
如果超出配置值,当您尝试添加或更新服务引用时,可能会看到如下所示的错误消息:
读取XML数据时已超出最大名称字符集计数配额(16384).nametable是用于存储XML处理期间遇到的字符串的数据结构 - 具有非重复元素名称,属性名称和属性值的长XML文档可能会触发此配额.通过更改创建XML阅读器时使用的XmlDictionaryReaderQuotas对象上的MaxNameTableCharCount属性,可以增加此配额.第1行,第332845号.
Server Mex端点应指定如下:
<endpoint address="mex"
binding="customBinding"
contract="IMetadataExchange"
name=""
bindingConfiguration="customMex"
listenUriMode="Explicit" />
Run Code Online (Sandbox Code Playgroud)
使用Custom Binding块指定如下:
<customBinding>
<binding name="customMex">
<textMessageEncoding>
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
maxArrayLength="2147483647" maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
</textMessageEncoding>
<httpTransport transferMode="Buffered" maxReceivedMessageSize="2147483647"
maxBufferSize="2147483647"/>
</binding>
</customBinding>
Run Code Online (Sandbox Code Playgroud)
如果您遇到有关服务的许多方法的问题,这可能会有所帮助.
| 归档时间: |
|
| 查看次数: |
5732 次 |
| 最近记录: |