2016-09-06 6 views
-1

IIS上でhttpとnet.tcpプロトコルで動作するwcfサービスがあります。今私はそれぞれに割り当てられているポートでライブIPアドレスを取得したいと思います。さらに、私はwcfサービスプロジェクトでそれを望みます。あなたの提案をお願いします。WCFサービスのホストされたIPアドレスを取得する

+0

http://stackoverflow.com/questions/646525/getting-the-ip-address-of-server-in-asp-net –

+0

私は6 'の高さになりたいと思っています – MickyD

答えて

0

あなたはweb.configファイルを使用してWCFサービスを設定するときbaseAddresses要素に以下のweb.configファイルに示すように、ポートを指定:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <system.serviceModel> 
    <services> 
     <service name="ServiceClassName"> 
     <host> 
      <baseAddresses> 
      <add baseAddress="net.tcp://localhost:12345/ServiceClassName"/> 
      </baseAddresses> 
     </host> 
     <endpoint address="" 
        binding="netTcpBinding" 
        contract="ServiceInterfaceName" /> 
     </service> 
    </services> 
    </system.serviceModel> 
</configuration> 

IPアドレスは少しトリッキーです。実行時にIPアドレスがわからない、またはサービスに接続するためにホスト名を使用できない特定の理由があるのはなぜですか?

+0

definately.thisはこのアプローチの1つですが、この私のサービスポートまたはIPが変更されたときはいつでもベースアドレスを変更する必要がありました。しかし、私が意味するところは、(Dns.GetHostAddresses)のようないくつかのクラスを使って実行しているwcfプロジェクトのhttp、net.tcpのような割り当てられたプロトコルのライブIPアドレスを得ることができる方法です。 –

+0

それは正しいです。開発とデプロイメントの間には隔たりがあることを忘れないでください。ホスト名の設定などは、デプロイメント・ステップで行われます。 WCFサービスのポートは、どのくらいの頻度で変更されますか? –

+0

あなたは確かに正しいです。しかし、私は何もハードコードではない方法を探しています。私はあなたの提案に感心します。ありがとう –

関連する問題