私は、WCF サービス コントラクトと、その WCF サービスを呼び出す Silverlight コントロールを含む Web アプリケーションを構築しました。開発サーバーとテスト サーバーでは問題なく動作します。
System.ServiceModel.ServiceActivationException
ライブ サーバーにデプロイしてアプリケーションを実行すると、コンパイル中に例外が発生したためサービスをアクティブ化できないことを示す例外が発生します。例外は次のとおりです。
このコレクションには、スキーム http のアドレスがすでに含まれています。このコレクションには、スキームごとに最大 1 つのアドレスしか含めることができません。
この例外は、Web サイトに複数のホスト ヘッダーがある場合にスローされる可能性があると読みましたが、これはライブ サーバーで当てはまります。どうやら、IIS でホストされている WCF サービスは、ベース アドレスを 1 つしか持てないようです。この問題を回避するにはどうすればよいですか?
ベストアンサー1
.Net 4 では、以下のオプションを使用できますmultipleSiteBindingsEnabled
。
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true">
</serviceHostingEnvironment>
</system.serviceModel>
そうすれば、各アドレスを指定する必要がなくなります。