Maximálna kvóta veľkosti správy pre prichádzajúce správy (65536) bola prekročená. Na zvýšenie kvóty použite vlastnosť MaxReceivedMessageSize na príslušnom viazacom prvku.
Pri používaní WCF sa stretávam s nasledujúcimi problémami:
Maximálna kvóta veľkosti správy pre prichádzajúce správy (65536) bola prekročená. Na zvýšenie kvóty použite vlastnosť MaxReceivedMessageSize na príslušnom viazacom prvku.
Popis problému:
Keď klient zavolá WCF a vráti veľké množstvo dát, nie je problém s LAN (zákazník našiel problém na zariadení na mieste, presný dôvod nie je známy. Existuje problém s pridávaním príspevkov na extranet.
Výnimka, ktorú VS2012 Debug zachytáva, je: Pri prenose dát cez HTTP kanál nastala chyba (údaje nebolo možné čítať z transportného spojenia: spojenie bolo uzavreté. )。
Výnimka vrátená nástrojom WCFStorm je: Maximálna kvóta veľkosti správy pre prichádzajúce správy (65536) bola prekročená. Na zvýšenie kvóty použite vlastnosť MaxReceivedMessageSize na príslušnom viazacom prvku.
Pred chybou server aj klient pridali nasledujúce nastavenia:
Na serverovej strane pridajte nasledujúci kód na vyriešenie problému:
Dúfam, že to vyrieši aj vás, ktorí máte rovnaký problém.
Ďalšie riešenia:
Po prečítaní @sunny007sun príspevku http://bbs.csdn.net/topics/360255080 sa našlo riešenie http://www.cnblogs.com/happyhippy/archive/2011/07/02/2096482.html jeho zázname (blogu). Web.config automaticky generovaný Silverlightom nemá konfiguračné informácie pre služby a je potrebné ho tu pridávať <services> <service behaviorConfiguration="MyBehavior" meno="WcfService1.Service1"> <adresa koncového bodu="" binding="basicHttpBinding" bindingConfiguration="NewBinding0" contract="WcfService1.IService1" /> <endpoint adresa="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> </services> V skutočnosti stále existuje rozdiel medzi service.name a endpoint.contract, contract je protokol, ktorý zodpovedá ServiceContract v rámci projektu WCF, teda rozhraniu IService1, a service zodpovedá špecifickému volaniu svc, teda Service1.
Zatiaľ bol problém vyriešený, ďakujem @sunny007sun za 11 rokov písania príspevkov a blogovania.
|