<behaviors> <serviceBehaviors> <behavior name="beSetting"> <serviceMetadata httpGetEnabled="True"/> <serviceDeBUG includeExceptionDetailinFaults="True" /> <dataContractSerializer maxItemsInObjectGraph="2147483646"/> </behavior> </serviceBehaviors></behaviors> <services> <service name="Mynamespace.MyService" behaviorConfiguration="beSetting" > <endpoint address="http://localhost/myservice/" binding="webhttpBinding" bindingConfiguration="webhttpBinding1" contract="Mynamespace.IMyService" bindingnamespace="Mynamespace"> </endpoint> </service></services>
以上对我的数据拉动没有影响.由于数据量很大,服务器超时.
但是,我可以在代码中指定最大限制并且有效
[ServiceBehavior(MaxItemsInObjectGraph=2147483646,IncludeExceptionDetailinFaults = true)] public abstract class MyService : MyService { blah... }
有谁知道为什么我不能通过web.config设置来完成这项工作?我想保留在web.config中,以便将来更新.
解决方法 在您的行为部分中,使用dataContractSerializer添加端点行为,如下所示:<endpointBehaviors> <behavior name="LargeQuotaBehavior"> <dataContractSerializer maxItemsInObjectGraph="2147483646"/> </behavior></endpointBehaviors>
然后修改您的端点以使用此行为,如下所示:
<endpoint address="http://localhost/myservice/" binding="webhttpBinding" bindingConfiguration="webhttpBinding1" contract="Mynamespace.IMyService" bindingnamespace="Mynamespace" behaviorConfiguration="LargeQuotaBehavior">
这应该可以解决您的问题.
总结以上是内存溢出为你收集整理的web.config中的WCF服务dataContractSerializer maxItemsInObjectGraph全部内容,希望文章能够帮你解决web.config中的WCF服务dataContractSerializer maxItemsInObjectGraph所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)