【发布时间】:2012-01-09 05:26:04
【问题描述】:
我们的组织有几个 WCF Web 服务需要作为自己的应用程序托管,但我们希望从单个子域提供服务。
webservs.domain.edu/service1/
webservs.domain.edu/service2/
service1 和 service2 子目录在主 (webservs) 文件夹中设置为它们自己的应用程序。问题是,因为子目录是它们自己的应用程序(这是必要的,因为服务都是独立的项目,具有非常不同的功能/代码库)它们无法识别正确的目录结构。
在wsdl文档中,schemaLocation是:
<xsd:import schemaLocation="http://server.department.domain.edu/service1/Service.svc?xsd=xsd0">
但是,正确的路径应该是:
<xsd:import schemaLocation="http://server.department.domain.edu/webservs/service1/Service.svc?xsd=xsd0">
有人建议将 serviceBehavior httpGetUrl 属性设置为正确的路径,但是当我这样做时,我会抛出异常:“URI 的注册已经存在”。
有没有人遇到过这个问题或对如何实施有任何想法?
【问题讨论】:
-
您称它们为“子目录”,但它们应设置为独立的虚拟目录(IIS 7 中的应用程序)。
-
他们是。我的命名可能有点不准确,我们有一个服务器团队来处理这部分,所以我没有很多经验。但是他们将目录设置为虚拟目录/应用程序。
标签: c# asp.net wcf web-services