【问题标题】:There was an error downloading metadata from the address从地址下载元数据时出错
【发布时间】:2012-05-23 23:52:11
【问题描述】:

我正在尝试添加服务参考。

从地址下载元数据时出错

这是一次又一次显示的错误?

请帮忙

【问题讨论】:

  • 请发布 wsdl 或通过电子邮件发送给我
  • 如果是一个小文件,请粘贴到这里。如果它很大并且有引用文件(例如“导入”标签),请将它们全部发送给我。我想重现它
  • 基本上在点击添加服务参考后,当我按下确定时,它会显示一个错误:从地址下载元数据时出错,请输入有效的 URL
  • 请发布您尝试添加的服务的 web.config。

标签: wcf service-reference


【解决方案1】:

我知道这是一个老歌,但我想我会添加对我有用的东西,以便我可以在路上再次找到它;)

就我而言,AppPool 用户无权访问 %Windir%\temp,这显然是生成 MEX 数据所必需的。

this thread 的 Amy Peng 大喊小费!

【讨论】:

    【解决方案2】:

    我遇到过这样的问题:添加服务引用失败,并显示“方法不允许”消息。

    wsdl 在我的浏览器中运行良好..

    原因是我将端点配置为侦听http://0.0.0.0:6000/mex,“添加服务引用”工具似乎不喜欢它。将其更改为真实 IP 地址使其工作(例如http://127.0.0.1:6000/mex

    【讨论】:

      【解决方案3】:

      检查 IIS 是否提供服务 URL。就我而言,我更改了我的 Windows 密码,但忘记了 IIS 正在应用程序和应用程序池中使用这些凭据。

      【讨论】:

        【解决方案4】:

        先尝试重建项目,如果不能解决问题,请尝试在 web.config 中将属性 httpGetEnabled 从 FALSE 更改为 TRUE。

          <serviceBehaviors>
            <behavior name="serviceBehavior">
              <serviceMetadata httpGetEnabled="true"/>
              <serviceDebug includeExceptionDetailInFaults="false"/>
            </behavior>
          </serviceBehaviors>
        

        【讨论】:

          【解决方案5】:

          您可能还只需要构建/重建项目。

          【讨论】:

            【解决方案6】:

            尝试构建项目没有任何错误并再次提供服务参考。

            【讨论】:

            • 这个答案对我有帮助
            【解决方案7】:

            我也遇到了同样的情况,我发现我忘记在我的 WCF 服务的接口上添加“服务合同”和“操作合同”注释

            【讨论】:

            • 如果您在要使用的课程中忘记了[DataContract],则相同。
            【解决方案8】:

            这种情况下的另一种可能性是没有端点监听。即,您尝试添加的服务未“启动”。我在尝试添加对我正在处理的 WCF 服务的引用时犯了这个错误,但我忘了打开它。

            【讨论】:

              【解决方案9】:

              在 Web.config 文件中我更改了:

               <endpoint address="" binding="pollingDuplexHttpBinding"
                  contract="IAsyncTaskService"/>
              

              到这里:

              <endpoint address="" binding="pollingDuplexHttpBinding"
                  contract="DuplexService.Web.IAsyncTaskService"/>
              

              并且错误已被删除。 泽尼

              【讨论】:

                【解决方案10】:

                至少有 4 种可能性:

                • 元数据交换 mex 端点未定义
                • 元数据交换未启用
                • 您使用了错误的地址
                • 您被某些安全设置阻止

                在浏览器中尝试 url 看看它返回一个 wsdl

                【讨论】:

                • 找不到类型“SilverlightApplication6.Web.Service1”,在 ServiceHost 指令中作为 Service 属性值提供,或在配置元素 system.serviceModel/serviceHostingEnvironment/serviceActivations 中提供。
                • 浏览器在发布 URL 时显示上述消息。
                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2016-04-01
                • 1970-01-01
                • 2019-01-18
                • 1970-01-01
                相关资源
                最近更新 更多