Создание веб-службы ASMX из файла WSDL
У меня есть файл WSDL, и я пытаюсь создать веб-службу, которая соответствует WSDL.
Я создал клиенты с использованием файлов WSDL, которые используют существующую службу, но я никогда не создавал веб-службу, которая должна была следовать определенному WSDL.
Я дошел до использования:
wsdl.exe mywsdl.wsdl /l:VB /serverInterface
теперь у меня есть .VB файл, созданный из этого WSDL. Однако я не уверен, что я должен делать с этим файлом глаг. Похоже, у него есть публика интерфейс есть, но нет класса, который реализует интерфейс. Он также имеет кучу разделяемых классов для типов в WSDL.
Я ожидал, что там будет какой-то заглушка, где я вставил код для завершения вызовов службы. Раньше я создавал только простые веб-сервисы, и ни один из них не использовал общедоступные интерфейсы, поэтому я не знаком с тем, что здесь происходит.
на данный момент я не уверен, как я использую сгенерированный .VB файл и заставить его работать с собой .asmx и какое дополнительное кодирование необходимо для завершения интерфейса.
2 ответов:
Если вы уже создали интерфейсы, вам нужно реализовать эти интерфейсы.
Просто создайте новый веб-сервис и добавьте созданный интерфейс, чтобы он унаследовал этот интерфейс. Visual Studio может автоматически создавать заглушки для каждого метода в интерфейсе. Отметьте их атрибутом WebMethod и поместите некоторый код, который вернет некоторые тестовые данные/результаты.Если вы получили inteface (с некоторыми другими атрибутами, которые были автоматически сгенерированы:
public interface IRealWebService { string GetName(); }вы следует сделать новый сервис:
public class WebTestService : System.Web.Services.WebService, IRealWebService { #region IRealWebService Members [WebMethod] public string GetName() { return "It Works !!!!"; } #endregion }
все, что вам нужно сделать, это создать класс, который наследует от интерфейса, который WSDL.EXE сгенерировал, а затем реализовал методы из интерфейса.
Comments