【问题标题】:Cant add Secure web service as a reference to VS2005 project无法添加安全 Web 服务作为对 VS2005 项目的引用
【发布时间】:2009-04-14 08:53:41
【问题描述】:

我正在尝试将安全 Web 服务添加到 (C#) 项目作为参考,但 VS 出现以下错误:

无法转换类型的 COM 对象 'System.__ComObject' 到接口类型 'EnvDTE.IVsExtensibility'。这 操作失败,因为 COM 上的 QueryInterface 调用 带有 IID 的接口组件 '{3C536122-57B1-46DE-AB34-ACC524140093}' 由于以下错误而失败:否 支持此类接口(异常 从 HRESULT:0x80004002 (E_NOINTERFACE))。

有人知道为什么会这样吗?

【问题讨论】:

    标签: c# web-services


    【解决方案1】:

    找到以下诊断here。最初由 Steven Cheng 回答。希望这会有所帮助。

    问题描述:

    当尝试使用 Visual Studio 2005 中的“添加 Web 引用”功能针对同一 Web 服务应用程序中的多个 Web 服务端点(asmx 文件)创建 Web 服务客户端代理时。如果 Web 服务应用程序受到客户端身份验证的保护,客户端身份验证会提示客户端输入凭据,IDE 将报告以下异常:

    “无法将类型为“System.__ComObject”的 COM 对象转换为接口类型“EnvDTE.IVsExtensibility”。此操作失败,因为对具有 IID 的接口的 COM 组件调用 QueryInterface '{3C536122-57B1-46DE-AB34 -ACC524140093}' 由于以下错误而失败:不支持此类接口(来自 HRESULT 的异常:0x80004002 (E_NOINTERFACE))。”

    原因:

    这是一个纯 Visual Studio 2005 特定问题,内部设计时 COM 对象在处理将提示输入客户端凭据的服务端点时存在问题。

    目前的解决方法:

    1. 在外部网络浏览器中访问服务描述/WSDL 文档并将 WSDL 文档保存到本地文件系统。并针对 Visual Studio 2005 中本地保存的 WSDL 文档添加 Web 引用。

    2. 使用 .net 框架中的 WSDL.exe 命令实用程序在外部创建 Web 服务客户端代理。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-02
      • 1970-01-01
      • 1970-01-01
      • 2011-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多