0

クライアントからwcfサービスを呼び出すと、次のエラーが発生します。

EndpointDispatcherでのContractFilterの不一致が原因で、アクション''を含むメッセージを受信者で処理できません。これは、コントラクトの不一致(送信者と受信者の間のアクションの不一致)または送信者と受信者の間のバインディング/セキュリティの不一致が原因である可能性があります。送信者と受信者が同じコントラクトと同じバインディング(メッセージ、トランスポート、なしなどのセキュリティ要件を含む)を持っていることを確認します。

送信者と受信者が同じバインディングを使用する必要があることを示しています。つまりBasicHttpBinding、サーバーで使用する場合、クライアントで同じバインディングを指定する必要がありますか?

助けてくれてありがとう!

4

1 に答える 1

0

送信者と受信者が同じバインディングを使用する必要があることを示しています。サーバーで BasicHttpBinding を使用する場合、クライアントで同じバインディングを指定する必要があるということですか?

簡単なケースでははい

ただし、クライアントとサーバーの間にルーターが関係している場合、クライアントとサーバーの両方が通信に異なるバインディングを使用できる場合があります。たとえば。サービスが tcp バインディング (netTcp) を使用し、クライアントが http バインディング (basicHttp) を使用する場合、実際には相互に通信できませんが、それらの間にルーティング サービスがあると通信が可能になります。もちろん、ルーティング サービスは基本的な http バインディングを使用する必要があります。

于 2012-06-11T08:21:32.367 に答える