我确实有这个 WCF 服务合同:
[ServiceContract]
public interface IPolicyRetriever
{
[OperationContract, WebGet(UriTemplate = "/clientaccesspolicy.xml")]
Stream GetSilverlightPolicy();
}
与本Web.config
节:
<service behaviorConfiguration="policyRetrieverServiceBehavior"
name="WebService.PolicyRetriever">
<endpoint address="" binding="webHttpBinding"
behaviorConfiguration="policyRetrieverEndpointBehavior"
contract="WebService.IPolicyRetriever" />
</service>
服务器在 端口上运行localhost
,带有 Visual Studio Web 托管,8080
Web 服务文件名为WebService.svc
.
上面的代码将使该GetSilverlightPolicy()
方法暴露在http://localhost:8080/WebService.svc/clientaccesspolicy.xml
.
我需要的是在网络服务器的根目录而不是WebService.svc
子路径上公开文件,但我找不到完成此任务的方法。
将端点address
属性设置为/
或http://localhost:8080/
不起作用。
既不向host
服务节点添加部分:
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/"/>
</baseAddresses>
</host>
有没有人找到解决方案?