同じポートで複数の WCF REST サービスをホストしようとしています。Net.Tcp ポート共有サービスを開始しました。これが app.config ファイルです。
<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<services>
<service name="MyService">
<host>
<baseAddresses>
<add baseAddress="http://localhost/services/"/>
</baseAddresses>
</host>
<endpoint
address="test"
binding="webHttpBinding"
contract="IMyService"/>
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior>
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<netTcpBinding>
<binding name="PortSharingEnabled" portSharingEnabled="true">
</binding>
</netTcpBinding>
</bindings>
</system.serviceModel>
</configuration>
同じポートで 2 つのサービスをホストすることはまだできません。
2 番目のサービスを実行しようとすると、次のエラーが表示されます: http://screencast.com/t/Vlakb26XbuQr。 「ローカル コンピューターのサービス サービスが開始され、その後停止しました。他のサービスまたはプログラムで使用されていない場合、一部のサービスは自動的に停止します」。
トレース ログ ( http://screencast.com/t/tJ5Gvmy4Dgm7 ) には、 「HTTP は URL http://+:7778/MyServiceName/を登録できませんでした。別のアプリケーションが既にこの URL をHTTP.SYSに登録しています。」
編集:
<services>
<service name="Service1">
<host>
<baseAddresses>
<add baseAddress="http://localhost:7778/"/>
</baseAddresses>
</host>
<endpoint
address="first"
binding="webHttpBinding"
contract="IService1"/>
</service>
<service name="Service2">
<host>
<baseAddresses>
<add baseAddress="http://localhost:7778/"/>
</baseAddresses>
</host>
<endpoint
address="second"
binding="webHttpBinding"
contract="IService2"/>
</service>
</services>
ポート共有を有効にするために何かが欠けていると思いますか?