WSDL - это все, что вам нужно для создания клиентского прокси для веб-службы. И нет, это не до времен WCF. WSDL был разработан специально для этой цели.
Самое простое решение - использовать svcutil для создания кода.
Вы вызываете svcutil с WSDL веб-службы и возвращаете клиентский код вместе с конфигурацией для него.
Затем вы вызываете операции веб-службы как методы на экземпляре клиента. Это так просто!
Например, давайте рассмотрим базовый веб-сервис, подобный следующему: http://www.startvbdotnet.com/web/sample2.asmx (это базовая математика, представленная в виде веб-службы, которую я нашел в Google-ing).
Чтобы сгенерировать клиент для этого, я бы использовал svcutil так:
svcutil http://www.startvbdotnet.com/web/sample2.asmx?wsdl
Эта команда сгенерирует файлы Sample.cs
и output.config
(код и конфигурация для клиента).
Вы добавляете их в свой проект (вместе с необходимыми сборками, такими как System.ServiceModel
и System.Runtime.Serialization
), и теперь вы можете вызывать веб-сервис с кодом, подобным этому:
using (SampleSoapClient proxy = new SampleSoapClient())
{
Console.WriteLine(proxy.Add(6, 2));
Console.WriteLine(proxy.Substract(6, 2));
Console.WriteLine(proxy.Divide(6, 2));
Console.WriteLine(proxy.Multiply(6, 2));
}
WCF облегчает жизнь. Добавление безопасности также просто с использованием правильной конфигурации или атрибутов для классов обслуживания.