Tengo problemas para especificar dataContractSerializer maxItemsInObjectGraph en el host web.config.WCF service dataContractSerializer maxItemsInObjectGraph en 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>
Lo anterior no tiene ningún efecto en mi extracción de datos. El servidor agota el tiempo debido al gran volumen de datos.
puedo sin embargo especificar el límite máximo en el código y que funciona
[ServiceBehavior(MaxItemsInObjectGraph=2147483646, IncludeExceptionDetailInFaults = true)]
public abstract class MyService : MyService
{
blah...
}
¿Alguien sabe por qué no puedo hacer este trabajo a través de una configuración web.config? Me gustaría mantenerme en la web.config para que sea más fácil para futuras actualizaciones.
Estoy teniendo este problema también. Me pregunto por qué nadie más ha respondido? Gracias por el consejo sobre poder establecer el 'ServiceBehavior' en el código, al menos puede hacer que me mueva. – jocull
¿Sabía que maxItemsInObjectGraph solo define la cantidad total de elementos permitidos en la respuesta, no el tamaño de respuesta absoluto, sí? (Creo que si no está especificado, tiene un valor predeterminado de 60k xml) –
Dave, ¿se ha respondido tu pregunta o no? Si la respuesta dada resolvió su problema, márquelo como tal. – Bardia