2012-10-14 2 views
5

、webServiceHost使用して、次のServiceHostとWebServiceHostの違いは何ですか? .Net4については

Uri baseAddress = new Uri("http://localhost:8080/test"); 
ServiceHost host = new ServiceHost(typeof(TestService), baseAddress); 
host.Open(); 

Uri baseAddress = new Uri("http://localhost:8080/test"); 
WebServiceHost host = new WebServiceHost(typeof(TestService), baseAddress); 
host.Open(); 

すべての書籍をお勧めの間に違いはありますが、なぜ私は違いを見ることができませんか?

答えて

1

サービスタイプがある場合はWebServiceHost(Object, Uri[])コンストラクタを使用し、シングルトンインスタンスが必要な場合でも、必要に応じて新しいインスタンスを作成できます。サービスホストがサービスの特定のシングルトンインスタンスを使用する場合にのみ、ServiceHost(Object, Uri[])コンストラクタを使用します。

+1

あなたはServiceHostがシングルトンだが、WebServiceHostはそうではないということを意味しますか?どんな証拠? –

+0

@AdamLeeは、この[MSDN](http://msdn.microsoft.com/en-us/library/ms585489(v = vs.100).aspx)ページ – Jaguar

6

WebServiceHostクラスは、ServiceHostクラスに基づいています。

デフォルトでは、WebHttpBindingWebHttpBehaviorが付属しています。 (良いところは、あなたが簡単な使用のために、設定ファイルを必要としないです。)MSDNから

:あなたが代わりのServiceHostのWebServiceHostを使用する場合

は、それが自動的に使用して、あなたのためのWebエンドポイントを作成します。 WebHttpBehaviorで注入されたエンドポイントを設定する

関連する問題