wcf kullanırken bazen serverdan 3067 elemanlı bir array göndermeniz gerekebilir bu elemanlarda sizin oluşturduğunuz bir class dan oluşuyor ise biraz büyükçe gelebilir o zaman abuk subuk hatalara maruz kalırsınız.
1. si
"The request channel timed out while waiting for a reply after 00:00:59.4062500. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout."
yani diyorki server zamanında veremedi. halbuki verdi ikiside aynı makinede gözümle görüom yahu. sonra timeout u nasıl artırırsınız şöyle: sendTimeout="00:05:00" yani 5dk bekle dioz clienta app.configde. oda beklemeyi insan olmayı bilio bu seferde başka abuk bir exception
2. si
{"The maximum message size quota for incoming messages (65536) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element."}
top olasın wcf insanmısın sen diyip bakınıoz ve şunuda app.config e eklememiz gerektiğini görüoz: maxReceivedMessageSize="5000000"
aha bundan sonra 3sn de alıp işine devam edio demekki derdi timeout değil size mıymış bende bilmiom ama bu eblek exceptionlarda olmasa hayatın heyecanı nerede dimi :D
bu arada verdiğim tagların yerini bulmasıda mesele olabilir özellikle svcutil.exe den config aldıysanız eşşek kadar config çıkarıo. o sebeple yukardaki tagların asıl olması gerektiği gibi olan app.config aşşağıdadır.
app.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<client>
<endpoint
address="http://localhost:8000/"
binding="wsHttpBinding"
bindingConfiguration="TransactionalWS"
contract="IViCent"
/>
</client>
<bindings>
<wsHttpBinding>
<binding name="TransactionalWS" transactionFlow="true" sendTimeout="00:05:00" maxReceivedMessageSize="5000000" >
<reliableSession enabled="True" />
</binding>
</wsHttpBinding>
</bindings>
</system.serviceModel>
</configuration>
umarım birinin işine yarar.
türkçe c# püf noktaları.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment