C# WCF上maxStringContentLength存在问题
我继承了一个WCF web服务,该服务在IIS 7上运行ASP.Net 2 然而,我们在发布大量数据时遇到了一个问题,它会生成错误400错误请求 我添加了元素,因为跟踪会产生以下错误 反序列化CIX.API.Contracts.PostMessage类型的对象时出错。读取XML数据时已超过最大字符串内容长度配额(8192)。可以通过更改创建XML读取器时使用的XmlDictionaryReaderQuotas对象的MaxStringContentLength属性来增加此配额。第51行,位置322 我在下面列出了整个system.serviceModel-有人能发现任何问题吗?我一直试图解决这个问题有一段时间了,但我一直无法解决,任何帮助都将不胜感激C# WCF上maxStringContentLength存在问题,c#,web-config,maxstringcontentlength,C#,Web Config,Maxstringcontentlength,我继承了一个WCF web服务,该服务在IIS 7上运行ASP.Net 2 然而,我们在发布大量数据时遇到了一个问题,它会生成错误400错误请求 我添加了元素,因为跟踪会产生以下错误 反序列化CIX.API.Contracts.PostMessage类型的对象时出错。读取XML数据时已超过最大字符串内容长度配额(8192)。可以通过更改创建XML读取器时使用的XmlDictionaryReaderQuotas对象的MaxStringContentLength属性来增加此配额。第51行,位置322
<diagnostics>
<messageLogging logMessagesAtTransportLevel="true" logMessagesAtServiceLevel="false" logMalformedMessages="true" logEntireMessage="true" maxSizeOfMessageToLog="65535000" maxMessagesToLog="500" />
</diagnostics>
<extensions>
<behaviorExtensions>
<add name="restHttpBehavior" type="CIX.API.Behaviors.ErrorHandling.RestBehaviorExtension, CIX.API, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
</behaviorExtensions>
<bindingElementExtensions>
<add name="secureCIXChannel" type="CIX.API.Channels.SecureCIX.SecureCIXBindingExtension, CIX.API, Version=2.0.0.0, Culture=neutral" />
<add name="hlRestChannel" type="CIX.API.Channels.HLRest.HLBindingExtension, CIX.API" />
</bindingElementExtensions>
</extensions>
<services>
<service behaviorConfiguration="CIX.API.ServiceBehavior" name="CIX.API.CIX">
<host>
<baseAddresses>
<add baseAddress="http://localhost/API/" />
</baseAddresses>
</host>
<endpoint contract="CIX.API.ICIX" address="" binding="customBinding" bindingConfiguration="CIXBinding" behaviorConfiguration="CIX.API.CIXBehavior" />
</service>
</services>
<bindings>
<customBinding>
<binding name="CIXBinding" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647">
<secureCIXChannel />
<webMessageEncoding>
<readerQuotas MaxStringContentLength="2147483647" />
</webMessageEncoding>
<httpTransport manualAddressing="true" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" />
</binding>
</customBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="CIX.API.CIXBehavior">
<dataContractSerializer maxItemsInObjectGraph="200000" />
<!--<webHttp />-->
<restHttpBehavior />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="CIX.API.ServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
<behavior name="CIX.Web.CIXBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
Leslie还可以尝试将maxArrayLength=“2147483647”maxBytesPerRead=“2147483647”添加到readerquota。还可以尝试添加maxArrayLength=“2147483647”maxBytesPerRead=“2147483647”到readerquota。不幸的是,这没有区别。MaxStringContentLength应该是MaxStringContentLength…配置区分大小写…请检查是否在正确的位置更新配置。不幸的是,这没有区别。MaxStringContentLength应该是MaxStringContentLength…配置区分大小写…请检查是否在正确的位置更新配置。很遗憾,这没有什么区别。MaxStringContentLength应该是MaxStringContentLength…配置区分大小写…请检查是否在正确的位置更新配置。