1

ネットワーク サービスという用語は、NNTP、IMAP、POP3 など、TCP/IP の上層に定義されたプロトコルが定義されているものを指します。

WCF クライアントを使用して既存のネットワーク サービスに接続する方法を理解するのに非常に苦労しています。基本的に C# 化されたソケット コードを使用している例以外の例は見つかりませんでした。

WCF を使用して、栄光のソケット以外のものとしてレガシー サービスと通信する例を教えてもらえますか?

WCF はこの種の要件にも適していますか?

ありがとう。

4

3 に答える 3

1

WCFには一連の標準バインディングが付属しています。3.5で提供されるバインディングのリストは次のとおりです。

http://msdn.microsoft.com/en-us/library/ms730879.aspx

他のものを使用する必要がある場合、WCFはおそらく行く方法ではありません。独自のバインディングを構築できたとしても、コストがメリットを上回ります。

プロジェクトですべてがWCFを使用する必要があるという要件がある場合は、ソケットコード上にWCFファサードを構築できます。

于 2009-08-10T16:22:12.077 に答える
0

WCFの中心は、SOAPに基づくMicrosoftのユニファイドコミュニケーションエンジンです。ASMXWebサービス、WSE、.NETRemotingなどに取って代わります。

そのため、SOAPベースであるため、SOAPを話すものなら何でも話すことができます。これは、POP3やその他のサービスには当てはまらないと思います。したがって、これらのサービス用のWCFクライアントを作成できるとは思いません。

これらのサービスを最初から作成し、WCFサービスとして公開することに関しては(基本的にWCFサービスの実装は何でも実行でき、SOAPサービスとして外部に提示できるため、機能する可能性があります)、問題は次のとおりです。 ?

マーク

于 2009-08-10T16:27:54.420 に答える
0

「WCF」という用語は、実際には2つのことを意味します。

  • フレームワーク:「ABC」-アドレス、拘束力、契約
  • 上記の組み合わせの実際の使用(たとえば、BasicHttpBindingを使用するWCF Webサービス)

あなたが言及したプロトコルのバインディングは組み込まれていません。そのため、表示される例は「栄光のソケット」のように見えます-それが彼らの姿です。これがバインディングです。基本プロトコル(通常はUDP/IPまたはTCP/IP)に基づいて構築された抽象化のレベル。

さて、これがすべて言われているので、あなたは選択したプロトコルで使用できるバインディングを構築/借用/盗む/何でもする必要があります。これは、WCFフレームワークにソケットを挿入しているように見えるかもしれません。正直なところ、それがまさにそれです:)...では、何がそんなに素晴らしいのでしょうか。

仕様へのバインディングを実装できた場合は、すべてのWCFアプリケーションに適合する非常に簡単に置き換えられるコンポーネントを手に入れることができます。この動作が必要かどうかは、あなたとあなたの要件次第です:)

それで頑張ってください。

于 2009-08-10T16:00:47.067 に答える