Как использовать язык WSDL
Мне нужно использовать веб-сервис. Они прислали мне файл WSDL.
Что я должен сделать, чтобы добавить его на свой сайт и начать использовать его в качестве прокси.
( Если я помещу его в виртуальный каталог, он может быть обнаружен, но предоставляет ли он мне соединение с реальной веб-службой?)
4 ответов:
Я бы запустил Visual Studio 2008, создал веб-проект (или консольное приложение - не имеет значения), а затем щелкните правой кнопкой мыши проект и выберите "Добавить ссылку на службу" из контекстного меню.
введите путь к файлу и имя в поле и импортируйте WSDL-это создаст простой, очень простой клиент WCF для использования. Вы должны найти класс "YourservicenameClient" в сгенерированном коде, который должен иметь методы для каждого из определенных методов на WSDL заключить.
создайте экземпляр клиента и вызовите методы, которые вы хотите вызвать - вот и все!
YourServiceClient client = new YourServiceClient(); client.SayHello("World!");Если вам нужно указать удаленный URL (не используя тот, который создан по умолчанию), вы можете легко сделать это в конструкторе прокси-клиента:
YourServiceClient client = new YourServiceClient("configName", "remoteURL");здесь
configName- это имя конечной точки для использования (вы будете использовать все настройки, кроме URL), иremoteURL- это строка, представляющая URL для подключения (вместо одного содержащегося в конфигурации).
в visual studio.
- создать или открыть проект.
- щелкните правой кнопкой мыши проект в обозревателе решений.
- выберите "Добавить ссылку на сервис"
- вставьте адрес с помощью WSDL, который вы получили.
- Нажмите кнопку ОК.
Если ошибок нет, вы должны видеть ссылку на службу в обозревателе объектов и все связанные методы.
использовать WSDL.Утилиты exe-файла для создания прокси веб-службы из WSDL.
вы получите длинный исходный файл C#, который содержит класс, который выглядит следующим образом:
/// <remarks/> [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] [System.Web.Services.WebServiceBindingAttribute(Name="MyService", Namespace="http://myservice.com/myservice")] public partial class MyService : System.Web.Services.Protocols.SoapHttpClientProtocol { ... }в вашем клиентском коде, потребляющем веб-службы:
- создать экземпляр MyService.
- установите его свойство Url
- вызова веб-методов
Если вы хотите добавить ссылку на wsdl в .Net Coreпроект нет "добавить веб-ссылку".
чтобы добавить ссылку на wsdl, перейдите в Обозреватель решений, щелкните правой кнопкой мыши элемент проекта ссылки и выберите добавить опцию подключенного сервиса.
затем нажмите "ссылка на веб-службу Microsoft WCF":
Enter путь к файлу в текстовое поле URI и импортировать WSDL:
он будет генерировать простой, очень простой клиент WCF и вы использовать его что-то вроде этого:
YourServiceClient client = new YourServiceClient(); client.DoSomething();



Comments