从我所见,在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。这只是一种便利,它避免了您必须为每个端点输入完整的地址。如果存在,则端点可以具有相对地址(即相对于基地址)。