2

重新启动 Windows 7 后,我以管理员身份打开 Visual Studio 2010,使用 ASP.NET Web 角色创建一个新的 Windows Azure 项目项目,然后在 WebRole1 项目中添加一个 WebService1.asmx 并按 F5(运行)。

Windows Azure 服务启动正常,浏览器完美打开 http://127.0.0.1:8080 /WebService1.asmx。但是当我单击调用按钮来测试 web 服务方法时,我总是收到一个错误的请求 - 无效的主机名,带有 http://127.0.0.1: 8081 /WebService1.asmx/HelloWorld。

4

1 回答 1

0

最可能的原因是 ASMX 的 WSDL 文件不支持负载平衡环境,例如 Windows Azure。测试功能依赖于 WSDL。如果您添加 Web/服务参考,您将看到类似的问题。建议升级到 WCF。在 WCF 中,您可以使用 useRequestHeadersForMetadataAddress (http://msdn.microsoft.com/en-us/library/ee816894.aspx) 来解决此问题。如果您需要使用 ASMX,请尝试手动提供正确的 WSDL 文件。

于 2012-05-31T05:26:47.487 回答