Ответ 1
Я бы запустил Visual Studio, создаю веб-проект (или консольное приложение - не имеет значения).
Для стандарта.Net:
- Я бы щелкнул правой кнопкой мыши по проекту и выберите "Добавить ссылку на службу" из контекстного меню " Добавить".
- Я бы нажал кнопку "Дополнительно", затем нажмите "Добавить ссылку на службу".
- Я бы получил полный путь к файлу wsdl и вставить в адресную строку. Затем запустите стрелку (нажмите кнопку).
- Если есть ошибка при попытке загрузить файл, тогда должен быть сломанный и неразрешенный URL-адрес, который должен решить файл, как показано ниже:
Обратитесь к этому ответу за информацией о том, как исправить: fooobar.com/questions/9784708/...
Если нет ошибки, вы должны просто установить NameSpace, которое хотите использовать для доступа к службе, и оно будет сгенерировано для вас.
Для.Net Core
- Я бы щелкнул правой кнопкой мыши по проекту и выберите Connected Service из контекстного меню Добавить.
- Я бы выбрал из списка список поставщиков WCF веб-службы 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-адрес для подключения (а не тот, который содержится в конфиге).