8 Mayıs 2012 Salı

WCF Services - The maximum message size quota for incoming messages (65536) has been exceeded.



Son birkaç zamandır işlevini bile tam anlamadığım WCF Serviceslarla uğraşıyordum.. Herzamanki gibi mononun laneti vuku buldu ve pek çok gıcık engelle karşılaşıp ondan bundan yardım alaraktan serviceten doğru cevabı alabilip son aşamaya kadar gelebildim. Son aşama dediğim de servisten gelen metodları çalıştırıp sonuçları bir xml dosyasına yazdırmaktı.. Bu kadar basitti yani,, ne olurdu hemencik olsaydı :) Ama olmaaz, eğer hemen olursa uğursuzluk gelir..
Neyse sorunum bu defa da bazı metodların çalışırken
"The maximum message size quota for incoming messages (65536) has been exceeded. bla bla bla"
şeklinde bir hata vermesiydi.. Araştırdım ettim, sorunun app.config dosyasındaki
maxBufferSize ve maxReceivedMessageSize ayarlarıyla olduğunu keşfettim. Gel gelelim bu ayarları ne yaparsam yapayım aynı hatayı almaya devam ettim. Adeta yaptığım değişikliği kaale almıyordu program. Tam çözümü buldum derken olmaması cesaretimi kırmıştı.. Ama sonra bir forumda o şahane postu gördüm.. Linki:

http://forums.asp.net/post/4700212.aspx

Bu linkten hareketle app.config dosyamdaki alanlardan sadece
     maxBufferSize="2147483647"
     maxBufferPoolSize="524288"
     maxReceivedMessageSize="2147483647">
     <readerQuotas
      maxDepth="2147483647"
      maxStringContentLength="2147483647"
      maxArrayLength="2147483647"
      maxBytesPerRead="2147483647"
      maxNameTableCharCount="2147483647" />
ve

<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
alanlarımı değiştirip çalıştırdım. Hatadan eser kalmamıştı..
Her ne kadar WCF lerle uğraşırken çok sıkılmışsam da hatanın çözümünü bulmanın değeri paha biçilemez.
İnternete nasıl teşekkür edeceğimi bilemiyorum :)

Hiç yorum yok:

Yorum Gönder