0

我有一个 WCF 3.0 服务,该服务已使用 BasicHttpBinding 进行配置,并已部署并托管在 IIS 中。

我可以使用以下网址访问我的服务:

http://mydomain.com/subfolder1/subfolder2/myservice.svc/basic

地址末尾的“basic”是端点的相对地址,“/subfolder1/subfolder2”是 myservice.svc 文件物理部署到的位置:

 <endpoint address="basic" binding="basicHttpBinding" 
          contract="Company.MyService.Implementation.Contracts.IMyService">
 </endpoint>

如何配置设置,以便我可以使用以下 url 访问我的服务,而无需指定 .svc 路径:

http://mydomain.com/myService/basic

谢谢,

4

1 回答 1

0

事实上,这不是您服务的责任。您应该构建“无地址”服务,而不是在配置中指定一个绝对值。

您的问题与 IIS 下的网络托管有关。服务的物理路径(部署位置)和虚拟路径(客户端访问它的位置)之间存在巨大差异。

在您的示例中,您只需在http://mydomain.com/下创建一个新的 Web 应用程序并发布您的服务。subfolder1似乎是现有网站的虚拟目录。只需在此处使用 IIS 管理器创建 Web 应用程序。

于 2012-10-01T19:37:31.230 回答