WCF service dataContractSerializer maxItemsInObjectGraph in web.config
16,834
In your behavior section, add an endpoint behavior with the dataContractSerializer, like so:
<endpointBehaviors>
<behavior name="LargeQuotaBehavior">
<dataContractSerializer maxItemsInObjectGraph="2147483646"/>
</behavior>
</endpointBehaviors>
Then modify your endpoint to use this behavior like so:
<endpoint address="http://localhost/myservice/"
binding="webHttpBinding"
bindingConfiguration="webHttpBinding1"
contract="MyNamespace.IMyService"
bindingNamespace="MyNamespace"
behaviorConfiguration="LargeQuotaBehavior">
This should solve your problem.
Related videos on Youtube
Author by
Dave
Updated on April 25, 2022Comments
-
Dave about 2 years
I am having issues specifying the dataContractSerializer maxItemsInObjectGraph in host's web.config.
<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>
The above has no effect on my data pull. The server times out because of the large volume of data.
I can however specify the max limit in code and that works
[ServiceBehavior(MaxItemsInObjectGraph=2147483646, IncludeExceptionDetailInFaults = true)] public abstract class MyService : MyService { blah... }
Does anyone know why I can't make this work through a web.config setting? I would like to keep in the web.config so it is easier for future updates.
-
user1131926 over 9 yearsI ran into a similar issue today. Wcf was throwing exceptions about maxItemsInObjectGraph exceeded even though it was there in endpoint behaviour. then I moved that to Service behaviour which solved the issue.stackoverflow.com/questions/26610861/…