0

Windows サービス内で実行されている WCF サービスがあり、ローカル ネットワーク上にあります。私が望むのは、WP7 (同じネットワーク上) の Silverlight アプリから WCF を検出できるようにすることです。

WCF に Discovery 機能があることは知っていますが、UDP が必要で、WP7 ではサポートされていません。ローカル WCF を検出する他の方法はありますか?

また、WCF を起動する前に、WCF サービスの IP アドレスもわかりません。

4

3 に答える 3

2

私が思いついた解決策は、マルチキャストをサポートする WP7 のようにソケットを使用することです。したがって、セットアップは次のようになります。

  • デスクトップ サービス - WCF をホストする Windows サービスと、特定のポートでリッスンする小さなソケット アプリ。
  • WP7 クライアント - WCF に接続する前に、ソケットを使用してブロードキャストを送信し、WCF に接続する応答を取得したときに、WCF を実行するマシンの IP アドレスを調べます。
于 2012-02-01T14:30:21.940 に答える
1

WP7 プロジェクトで参照される WCF サービスの場合、WCF サービスは BasicEndpoint である必要があります。

于 2012-01-31T22:11:29.453 に答える
1

一種のカタログ サービスを公開する基本的なエンドポイントを提供できます。UDDI を実装する必要はありませんが、ニーズに合わせて Web サービスのアドレスを返すカスタム プロトコルにすることができます。

この方法では、単一のアドレスを知るだけで済みます。もちろん、返されたアドレスをキャッシュして、接続できない場合にのみカタログ サービスにクエリを実行できます。

于 2012-02-01T06:02:57.097 に答える