2012-03-29 27 views
0

私はWCFアプリケーションを作成していた中、WCFの名前付きパイプ - タイムアウトエラー

  • クライアントがのx64ビットプラットフォームで構築されて
  • サーバが名前付きパイプを使用しているのx86ビットプラットフォーム
  • コミュニケーションツール2の間に構築されています結合。

サーバー:それはMS Accessデータベースに話をコンソールアプリケーションで、実行したコマンド クライアントの結果を送信します。それは、サーバーに話すWinフォームアプリケーションであり、要求[選択クエリSELECT * FROM TABLE_NAME]

を送信
  • クライアントは、サーバーの関数を呼び出す[EXのために:公共の一覧はFoo(文字列のクエリ)]

問題:クエリが小さなデータとサーバー側で実行されると、データがに送信される[6000行が言います] Lis形式のクライアントt 問題ありません。データのサイズが大きくなると(例えば、10,00,000行)、クライアントは以下に述べるエラーを出します。

エラー:パイプが閉じられたため、操作を完了できません。これは、パイプの他端のアプリケーションが終了しているために発生している可能性があります。

問題になるのは何ですか?

もっと説明が必要な人は、返信してください。リンクの下の

-useはコードを見つけるために http://www.c-sharpcorner.com/Forums/Thread/166598/wcf-namedpipe-binding-time-out-error.aspx

サービスとクライアントが(私はとにかく思った?)同じ物理マシン上でホストされて
+3

コードをリンクしないでください...リンクが死ぬとそうでありません彼らが一度死んだら、人を助けてください。質問に関連するコードをコピーして貼り付けます。 – Robaticus

答えて

0

名前付きパイプバインディングのみを使用することができます - タイムアウト値あなたは何をしています持っている?

+0

- コードを見つけるために以下のリンクを使用してください http://www.c-sharpcorner.com/Forums/Thread/166598/wcf-namedpipe-binding-time-out-error.aspx –

+0

アプリケーションは同じ物理マシン上で実行されています。 64ビットと86ビットを使用してアプリケーションのみが構築されます。 –

1

おそらくあなたはクォータを増やす必要がウィルとバッファは、サーバーとクライアント側の両方のサイズ:

例:

<netNamedPipeBinding> 
    <binding name="Binding1" 
      maxBufferSize="655360" 
      maxReceivedMessageSize="655360"> 
     <readerQuotas maxDepth="2147483647" 
      maxStringContentLength="2147483647" 
      maxArrayLength="2147483647" 
      maxBytesPerRead="2147483647" 
      maxNameTableCharCount="2147483647" /> 
    </binding> 
    </netNamedPipeBinding> 
関連する問題