.net - WCF wsdl wsdl :import location, SOAP :address location are having machine name?

标签 .net wcf wsdl

嗨,我们使用 WCF 服务开发了 Web 服务,并使用 IIS 5.1 托管在 Windows 2003 服务器机器上。 WCF 托管于 basicHttpBinding .尝试访问服务的 wsdl 时 "*.svc?wsdl"它生成错误的 wsdl,即 wsdl 不能用于 java 和 php 客户端。
当我检查 wsdl 时

<wsdl:import namespace="xxxxx" location="http://machine name/xxx/xxx.svc?wsdl=wsdl0"/> 
<soap:address location="http://machine name/xcxx/xxx.svc" /> 

如何删除机器并将其替换为我的网站 url?
我如何生成完整的 WSDL 文档,就像 ASMX Web 服务将生成的那样?

最佳答案

这是我修复它的方法:

  • 在您的 IIS 绑定(bind)中,请确保包含主机名。
  • 安装此修补程序:http://support.microsoft.com/kb/971842 .知识库页面上有下载修复程序的链接。修补程序需要我重新启动。
  • 要“激活”修补程序,请将以下内容添加到 web.config 中的行为元素:


  • <默认端口>



    关于.net - WCF wsdl wsdl :import location, SOAP :address location are having machine name?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2361786/

    相关文章:

    wcf - WCF RIA 服务可以自托管吗?

    java - 如何从 WSDL 文件中获取复杂类型?

    c# - Wpf 显示超出控制的项目

    .net - Entity Framework 模型是否可以传递 SQL 脚本以针对数据库运行

    c# - 如何在 VS 2010 中将异步等待与 WCF 一起用于 WP7?

    java - 如何使用 Eclipse 在 Core Java 中使用 WSDL 文件(WSDL 文件使用 SOAP)创建 Web 服务?

    java - 使用cxf从wsdl生成java代码给出代码太大错误

    c# - 处理 StreamReader.ReadLine() 中断 - 服务器不可用

    C# 数学应用程序的哪种数字类型?

    wcf - 开发人员证书与为 WCF 购买的证书