HostContractSerializer maxItemsInObjectGraph öğesinin web.config dosyasında belirtilmesiyle ilgili sorunlar yaşıyorum.WCF service dataContractSerializer maxItemsInObjectGraph in 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>
Yukarıdaki veriler, veri çekme işlemimde bir etkisi yoktur. Sunucu, büyük hacimli veriler nedeniyle zaman aşımına uğruyor.
Ben ancak kodda maksimum sınırını belirleyebilir ve bu
çalışır[ServiceBehavior(MaxItemsInObjectGraph=2147483646, IncludeExceptionDetailInFaults = true)]
public abstract class MyService : MyService
{
blah...
}
Ben bir web.config ayarı ile bu işi yapamazsınız neden
bilen var mı? Gelecek güncellemeler için daha kolay olması için web.config dosyasında kalmak istiyorum.
davranışların bölümünde
Bu problemi de yaşıyorum. Kimsenin neden cevap vermediğini merak ediyorum. 'ServiceBehavior' kodunu kod olarak ayarlayabilmeniz için gereken ipucu için teşekkürler, en azından beni hareket ettirebilir. – jocull
Biliyorsunuz ki maxItemsInObjectGraph sadece yanıtta izin verilen toplam öğelerin sayısını tanımlar, tam yanıt boyutu değil, evet? (sanırım 60k xml öğelerine varsayılan olarak belirtilmemişse) –
Dave, sorunuzun yanıtı ya da değil miydi? Verilen cevap sorununuzu çözmüşse, bunu işaretleyin. – Bardia