如何控制 WCF 服务的生成 wsdl 中模式位置的大小写



我们有两个Web服务器(win2008 sp2)负载平衡。在其中一台机器上,在 wsdl 类型中生成的 SchemaLocation url 的服务名称(例如 myService.svc)部分是驼峰,而在另一台服务器上是 PascalCased(例如 MyService.svc)。一些 php soap 客户端对此有问题,并将它们解释为单独的 url,最终得到重复的类型定义。

两台服务器上的代码是相同的 - 我已经将其从一台复制到另一台以确保。我一直在通过 IIS(我猜问题可能在哪里),但是我找不到任何可以控制或影响仅 url 服务名称部分的大小写的内容。我什至尝试将物理文件(myservice.svc)重命名为小写,但这没有任何效果。

有没有人有过这个或可以指出我正确的方向?

非常感谢。

可以将配置属性httpGetUrl添加到服务行为元数据中,以控制进入 WSDL SchemaLocation值的内容。这篇博文解释了如何为域名执行此操作,但它应该适用于整个 URI。

最新更新