从我所看到的,在IIS中托管WCF服务时忽略了标记。我明白,当自托管这是必需的,但这有害甚至在IIS下运行时使用?
离。
<system.serviceModel>
<service blah blah blah>
<host>
<baseAddresses>
<add baseAddress="http://localhost/blah" />
</baseAddresses>
</host>
</service>
</system.serviceModel>
从我所看到的,您可以从一台机器上获取描述服务的配置文件,并在完全不同的机器上使用它并且工作正常。看起来好像IIS完全忽略了这一部分。
谢谢, 凯尔
答案 0 :(得分:34)
如您所知,在IIS中托管时,baseAddresses元素将被完全忽略。该服务的基地址由网站&amp;放置wcf服务的虚拟目录。
即使在自托管时,也不需要baseAddresses。这只是一种便利,可以避免您必须为每个端点输入完整地址。如果存在,端点可以具有相对地址(相对于基址,即)。
答案 1 :(得分:2)
自托管所需的基址。 IIS / WAS主机忽略基址。
答案 2 :(得分:2)
根据以下链接中的MSDN Microsoft文档,在“注释”部分的页面中间,“Internet信息服务(IIS)或Windows进程激活服务(WAS)下托管的服务使用虚拟目录作为其基址。“
http://msdn.microsoft.com/en-us/library/ee358768(v=vs.110).aspx