使用 WCF Web Service Reference Provider 工具

多年来,许多 Visual Studio 开发者在其. NET Framework 项目需要访问 Web 服务时,都享受到了添加服务引用工具所带来的工作效率。

“WCF Web Service Reference”工具是 Visual Studio 连接服务扩展,可用于将 .NET 5+、.NET Core 或 ASP.NET Core 项目连接到 Web 服务。 该工具提供类似于添加服务引用功能的体验,该体验仅适用于 .NET Framework 项目。 WCF Web Service Reference 工具可从网络位置的当前解决方案的 Web 服务中或从 WSDL 文件中检索元数据,还可生成源文件,该源文件包含可供 .NET 应用用于访问 Web 服务的 Windows Communication Foundation (WCF) 客户端代理代码。

重要

应仅从受信任源引用服务。 从不受信任的源添加引用可能会危及安全性。

先决条件

本文中的屏幕截图来自 Visual Studio 2022。

如何使用扩展

注意

WCF Web Service Reference 工具仅适用于 C# .NET Core 和 .NET Standard 项目,包括 ASP.NET Core Web 应用。

本文以“ASP.NET Core Web 应用程序”项目模板为例,介绍如何向该项目中添加 WCF 服务引用。

  1. 在解决方案资源管理器中,双击项目的“连接的服务”节点。 (对于 .NET Core 或 .NET Standard 项目,请右键单击该项目并选择“添加”>“连接的服务”。)

    随即显示“连接的服务”页,如下图所示 :

    Visual Studio Connected Services tab for .NET Core

  2. 在“连接的服务”页面上,选择“添加服务引用”。

    “添加服务引用”页面随即打开。

  3. 选择“WCF Web 服务”,然后选择“下一步”。

    此操作将打开“添加新 WCF Web 服务服务引用”向导。

    Visual Studio Service Endpoint tab for .NET Core

  4. 选择服务。

    a. 有几个服务搜索选项可用:

    • 要搜索当前解决方案中定义的服务,请单击“发现”按钮 。
    • 要搜索在指定地址托管的服务,请在“地址”框中输入服务 URL,然后单击“转到”按钮 。
    • 要选择包含 Web 服务元数据信息的 WSDL 文件,请单击“浏览”按钮 。

    b. 从“服务”框内的搜索结果列表中选择服务 。 如果需要,请在相应的“名称空间”文本框中为生成的代码输入命名空间 。

    c. 单击“下一步”按钮以指定数据类型选项或客户端选项。 或者,单击“完成”按钮,使用默认选项 。

  5. “数据类型选项”页面可用于优化生成的服务引用配置设置:

    Visual Studio Data type options tab for .NET Core

    注意

    如果在项目的引用程序集中定义了服务引用代码生成所需的数据类型,则“重新使用引用程序集中的类型”复选框选项将非常有用 。 重新使用这些现有数据类型,从而避免编译时类型冲突或运行时问题,这是非常重要的。

    加载类型信息时可能会有延迟,具体取决于项目依赖项和其他系统性能因素的数量。 加载过程中,“完成”按钮被禁用,除非未选中“重新使用引用程序集中的类型”复选框 。

  6. 完成后,单击“完成” 。

在显示进度的同时,工具:

  • 从 WCF 服务下载元数据。
  • 在名为“reference.cs”的文件中生成服务引用代码,并将其添加到“连接的服务”节点下的项目 。
  • 使用在目标平台上编译和运行所需的 NuGet 包引用更新项目文件 (.csproj)。

Visual Studio Progress window

进度完成后,可创建生成的 WCF 客户端类型的实例并调用服务操作。

另请参阅

反馈和问题

如果你有任何产品反馈,请使用报告问题工具在开发者社区进行报告。

发行说明

  • 请参阅发行说明,了解更新的版本信息(包括已知问题)。