从我所见,在IIS中托管WCF服务时,将忽略该标记。我知道在进行自我托管时这是必需的,但是在IIS下运行时是否有害甚至使用?

例如

<system.serviceModel>
  <service blah blah blah>
    <host>
      <baseAddresses>
        <add baseAddress="http://localhost/blah" />
      </baseAddresses>
    </host>
   </service>
</system.serviceModel>


从我所看到的,您可以获取描述一台机器上的服务的配置文件,并在完全不同的机器上使用它,效果很好。似乎IIS完全忽略了此部分。

谢谢,
凯尔

最佳答案

如您所料,在IIS中托管时,baseAddresses元素将被完全忽略。服务的基本地址由WCF服务所在的网站和虚拟目录确定。

即使是自托管,也不需要baseAddresses。这只是一种便利,它避免了您必须为每个端点输入完整的地址。如果存在,则端点可以具有相对地址(即相对于基地址)。

08-24 14:43