質問

現在、WCFサービスの使用方法を学んでいるので、WCFサービスの使用時に ServiceHost を使用することについて言及しているインターネット上のチュートリアルに絶えず遭遇しています。

この ServiceHost とは何ですか?


現在のプロジェクトでは、WCFサービスを使用しており、アプリから参照しているので、アプリからそれを使用したいときは、 ServiceClient を次のようにインスタンス化します:

new MusicRepo_DBAccess_ServiceClient(new InstanceContext(instanceContext), customBinding, endpointAddress);

そして、そのインスタンスからWebメソッド( OperationContract s)にアクセスします(明らかに、メソッドを使用する前に開き、その後 Open および Close <で閉じます) / code>)

私のWCFサービスはIISのホストであり、アプリから .svc にアクセスするだけで ServiceClient をインスタンス化します。

では、 ServiceHost を使用する理由と場所を教えてください

役に立ちましたか?

解決

ServiceHostは、基本的に、IISまたはWAS以外の設定でWCFサービスをホストするために必要なすべてを提供します。 ServiceHostの一般的な場所は、コンソールアプリまたはWindowsサービスです。 ServiceHostをセットアップする方法については、MSDNのサンプルコードを参照してください。コンソールアプリ

他のヒント

サービスの実装は単なる.NETクラスです。そのためのランタイム環境が必要なので、何らかの方法で実行できます。これがServiceHostの目的です。サービスクラスをロードし、エンドポイントとチャネルリスナーなどを設定し、サービスクラスに「エコシステム」を提供します。住み、運営する。

コンソールアプリ、Windowsサービス、またはWinformsアプリでServiceHostクラスをインスタンス化し、WCFサービスクラスを外部で利用できるようにするか、その作業をIISまたはWASに委任できます。 IISまたはWASでさえ、ServiceHostを使用してWCFサービスをホストします。 -WCFサービスのリクエストが届くたびに。

マーク

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top