同僚と私は、Web サービスに 8192 バイトを超えるデータを送信するという問題を解決しようとして、レンガの壁に頭をぶつけてきました。簡単な WCF プロジェクトを作成していくつかのデータの送信をテストしようとしましたが、それでも 8192 バイト以上で失敗します。何百もの Web ページを読み、web.config ファイルに変更を加えて、要素が十分に大きくなるようにしましたが、それでも機能しません。
任意の提案をいただければ幸いです。
ローカル ホストで IIS Express を Web サーバーとして使用し、WCFTestClient を使用してサービスにデータを送信してサービスをテストしています。また、Web サービスにデータを送信するためのクライアントとして Storm を使用してみました。
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<client>
<endpoint binding="basicHttpBinding" bindingConfiguration="NewBinding0"
contract="IService1" name="ClientEndPointName" />
</client>
<services>
<service name="Service1">
<endpoint address="http://localhost:2787" binding="basicHttpBinding"
bindingConfiguration="NewBinding0" name="DROServiceX" bindingName="DROBindingName"
contract="IService1" isSystemEndpoint="false" />
</service>
</services>
<bindings>
<basicHttpBinding>
<binding name="NewBinding0" transferMode="Buffered">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</binding>
</basicHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false"
multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>