私はWCFの初心者です。サービスで特定のポートをリッスンする必要があります。サービスが (Windows サービスとして) ホストされているときに、リッスンを開始する必要があります。サービスが停止したときに停止する必要があります。
無限ループで単純なコンソール アプリケーションにリッスンを実装することができました。
サービスでそれを行う方法はありますか?
サービスの開始時にポートリッスンを行うスレッドを作成します。これは、ポートリッスンの方法を知っていることを前提としています。次に、サービスが終了したら、リスナースレッドのThread.Abortメソッドを呼び出します。スレッドが強制終了されるとこの例外が発生するため、スレッドでThreadAbortExceptionをキャッチすることを忘れないでください。ここでは、ポートやストリームのリーダー/ライターを閉じるなどのクリーンアップを行う必要があります。
Windows サービスとしてホストするだけで問題ありません。ポートは、エンドポイント アドレスの一部として定義する必要があります。詳細については、このリンクをたどってくださいhttp://msdn.microsoft.com/en-us/library/ms733069(v=vs.90).aspx