Использование инструмента WCF Web Service Reference Provider

В течение многих лет разработчики на Visual Studio оставались довольны той производительностью, которую обеспечивал инструмент Добавление ссылки на службу, когда их проектам .NET Framework требовался доступ к веб-службам.

Средство справочника по веб-службам WCF — это расширение подключенной службы Visual Studio, которое позволяет подключить проект .NET 5+, .NET Core или ASP.NET Core к веб-службе. Он предоставляет интерфейс, аналогичный функциональным возможностям "Добавление ссылки на службу", который предназначен только для платформа .NET Framework проектов. Средство справочника по веб-службе WCF извлекает метаданные из веб-службы в текущем решении, в сетевом расположении или из WSDL-файла и создает исходный файл, содержащий прокси-сервер клиента Windows Communication Foundation (WCF), который приложение .NET может использовать для доступа к веб-службе.

Внимание

Ссылаться на службы следует только из надежного источника. Добавление ссылок из ненадежного источника может нарушить безопасность.

Необходимые компоненты

Снимки экрана, приведенные в этой статье, относятся к Visual Studio 2022.

Использование расширения

Примечание.

Средство справки по веб-службе WCF применимо только к проектам .NET Core и .NET Standard C#, включая веб-приложения ASP.NET Core.

В качестве примера используется шаблон проекта ASP.NET Core Web Application, в этой статье описывается добавление ссылки на службу WCF в проект.

  1. В Обозреватель решений дважды щелкните узел Подключение служб проекта. (Для проекта .NET Core или .NET Standard щелкните проект правой кнопкой мыши и выберите Добавить> Подключение ed Service.)

    Отображается страница Подключенные службы, как показано на следующем рисунке:

    Visual Studio Connected Services tab for .NET Core

  2. На странице Подключение служб выберите "Добавить ссылку на службу".

    Откроется страница "Добавить ссылку на службу".

  3. Выберите веб-службу WCF и нажмите кнопку "Далее".

    Откроется мастер добавления новой ссылки веб-службы WCF.

    Visual Studio Service Endpoint tab for .NET Core

  4. Выберите службу.

    a. Доступны несколько вариантов поиска служб:

    • Чтобы найти службы, определенные в текущем решении, нажмите кнопку Обнаружение.
    • Чтобы найти службы, размещенные по указанному адресу, введите URL-адрес службы в поле Адрес и нажмите кнопку Перейти.
    • Чтобы выбрать WSDL-файл, содержащий информацию о метаданных веб-службы, нажмите кнопку Обзор.

    b. Выберите службу в списке результатов поиска в поле Службы. При необходимости введите пространство имен для сформированного кода в соответствующем текстовом поле Пространство имен.

    c. Нажмите кнопку "Далее", чтобы указать параметры типа данных или параметры клиента. Можно также нажать кнопку Готово, чтобы использовать параметры по умолчанию.

  5. Страница параметров типа данных позволяет уточнить параметры конфигурации созданной ссылки на службу:

    Visual Studio Data type options tab for .NET Core

    Примечание.

    Параметр Повторно использовать типы в сборках, на которые есть ссылки удобен, когда типы данных, необходимые для создания кода ссылки на службу, определены в одной из сборок, на которые ссылается проект. Важно использовать эти существующие типы данных повторно, чтобы избежать конфликта типов во время компиляции или проблем во время выполнения.

    При загрузке сведений о типах может возникнуть задержка, которая зависит от числа зависимостей проекта и других факторов, связанных с производительностью системы. Кнопка Готово во время загрузки недоступна, если только не снят флажок Повторно использовать типы в сборках, на которые есть ссылки.

  6. По завершении нажмите кнопку Готово.

Отображая ход выполнения, инструмент:

  • скачивает метаданные из службы WCF;
  • формирует код для ссылок на службы в файле с именем reference.cs и добавляет его в узел Подключенные службы проекта;
  • обновляет файл проекта (CSPROJ-файл) с использованием ссылок на пакеты NuGet, необходимых для компиляции и запуска на целевой платформе.

Visual Studio Progress window

После завершения этих процессов можно создать экземпляр сформированного типа клиента WCF и вызвать операции службы.

См. также

Отзывы и вопросы

Отзывы о продукте отправляйте в Сообщество разработчиков с помощью средства информирования о проблемах.

Заметки о выпуске

  • Актуальные сведения о выпуске, включая описание известных проблем, см. в заметках о выпуске.