Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取WCF服务的托管IP地址_C#_Wcf - Fatal编程技术网

C# 获取WCF服务的托管IP地址

C# 获取WCF服务的托管IP地址,c#,wcf,C#,Wcf,我有wcf服务,它在IIS上使用http和net.tcp协议运行。现在,我想用分别分配给它们的端口获得实时IP地址。此外,我希望它在wcf服务项目。请给出您的建议。当您使用web.config文件设置WCF服务时,请在baseAddresses元素中指定如下web.config所示的端口: <?xml version="1.0" encoding="utf-8" ?> <configuration> <system.serviceModel> &l

我有wcf服务,它在IIS上使用http和net.tcp协议运行。现在,我想用分别分配给它们的端口获得实时IP地址。此外,我希望它在wcf服务项目。请给出您的建议。

当您使用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地址的原因,或者是否存在无法使用主机名连接到服务的特定原因?

我想明确地说是6'高。这是一种方法,但在这种方法中,每当我的服务端口或IP发生更改时,我都需要更改基址。但我的意思是,有没有任何方法可以让我在wcf项目中获得所有分配协议(如http、net.tcp)的实时IP地址,这些协议使用正确的类(Dns.GetHostAddresses)运行。请记住,开发和部署之间是分离的。主机名等的配置在部署步骤中完成。您的WCF服务的端口多久更改一次?您肯定是对的。但我正在寻找一种方法,没有什么是硬代码,所以。我佩服你的建议。感谢您通过代码而不是通过.conf创建配置。