2

同僚と私は、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>
4

1 に答える 1

0

これは、サーバー側とクライアント側で構成する必要があります。いずれかが正しく構成されていない場合、要求は失敗します。サーバーは正しく構成されているため、クライアント構成を確認する必要があります。何が起こっているのかを本当に知りたい場合は、WCF トレースを開始して何が起こるかを確認してください。

WCF トレース MSDN

于 2013-05-08T11:05:17.630 に答える