Я бы запустил Visual Studio, создал бы веб-проект (или консольное приложение - не имеет значения).
Для стандарта .Net:
- Я бы щелкнул правой кнопкой мыши по проекту и выбрал «Добавить ссылку на службу» в контекстном меню Добавить .
- Я бы щелкнул на Advanced, а затем на Add Service Reference.
- Я бы получил полный путь к файлу wsdl и вставил в адресную строку. Тогда стреляйте в Стрелку (кнопка перехода).
- Если при попытке загрузить файл произошла ошибка, то должен быть сломанный и неразрешенный URL-адрес, который необходимо устранить, как показано ниже:
Обратитесь к этому ответу для получения информации о том, как исправить:
Stackoverflow ответ на: Невозможно создать сервисную ссылку для файла wsdl
Если ошибки нет, просто установите NameSpace, которое вы хотите использовать для доступа к сервису, и оно будет сгенерировано для вас.
Для .Net Core
- Я бы щелкнул правой кнопкой мыши по проекту и выбрал Connected Service из контекстного меню Add.
- Я бы выбрал поставщика списка веб-служб Microsoft WCF из списка.
- Я бы сразу нажал кнопку «Обзор» и сразу выбрал файл wsdl. Установите пространство имен, и все готово.
Если вы столкнулись с какой-либо ошибкой, обратитесь к приведенному выше адресу для исправления ошибок.
Любой из вышеперечисленных методов создаст для вас простой, очень простой клиент WCF. Вы должны найти класс «YourservicenameClient» в сгенерированном коде.
Для справки сгенерированный файл cs можно найти в вашем Obj / debug (или release) / XsdGeneratedCode, и вы все равно можете найти dll в папке TempPE.
Созданные службы должны иметь методы для каждого из определенных методов в контракте WSDL.
Создайте экземпляр клиента и вызовите методы, которые вы хотите вызвать - вот и все!
YourServiceClient client = new YourServiceClient();
client.SayHello("World!");
Если вам нужно указать удаленный URL (не используя созданный по умолчанию), вы можете легко сделать это в конструкторе прокси-клиента:
YourServiceClient client = new YourServiceClient("configName", "remoteURL");
где configName
- это имя конечной точки для использования (вы будете использовать все настройки, кроме URL), а remoteURL
- это строка, представляющая URL-адрес для подключения (вместо того, который содержится в конфигурации ).