我刚刚增加了ServiceContract中的方法数量。当我在Visual Studio中更新Service Reference时,我收到以下消息:
我把它修改成了:
原始服务器端配置如下:元数据包含一个无法解析的引用: “net.tcp://xxxxx.com:8002/DataQueryService/mex”。
XML文档中存在错误。
读取XML数据时已超过最大的nametable字符计数配额(16384)。nametable是一种用于存储在XML处理期间遇到的字符串的数据结构,具有非重复元素名称、属性名称和属性值的长XML文档可能会触发该配额。通过在创建XML阅读器时使用XmlDictionaryReaderQuotas对象更改MaxNameTableCharCount属性可以增加此配额。
<services>
<service behaviorConfiguration="XXXXX.DataQueryService.ServiceBehavior" name="XXXXX.DataQueryService.QueryService">
<host>
<baseAddresses>
<add baseAddress="net.tcp://xxxxx.com:8002/DataQueryService" />
</baseAddresses>
</host>
<endpoint name="MexEndpoint" address="mex" binding="customBinding" bindingConfiguration="unsecureTcpMex" contract="IMetadataExchange" />
</service>
</services>
<bindings>
<customBinding>
<binding name="unsecureTcpMex">
<tcpTransport portSharingEnabled="True" />
</binding>
</customBinding>
</bindings>
我把它修改成了:
<bindings>
<customBinding>
<binding name="unsecureTcpMex">
<textMessageEncoding>
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</textMessageEncoding>
<tcpTransport portSharingEnabled="True" maxReceivedMessageSize="2147483647" />
</binding>
</customBinding>
</bindings>
我需要对配置文件进行哪些更改才能让它正常工作?
更新根据@Chris的建议,我尝试更新了SVCUtil的配置文件。我为我的终结点添加了一个名称,以便它匹配(已上面更新)。现在,SvcUtil.config如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding name="unsecureTcpMex">
<textMessageEncoding>
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</textMessageEncoding>
<httpTransport maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" />
</binding>
</customBinding>
</bindings>
<client>
<endpoint binding="customBinding" bindingConfiguration="unsecureTcpMex"
contract="IMetadataExchange"
name="MexEndpoint" />
</client>
</system.serviceModel>
</configuration>