Откажитесь от утилиты командной строки wsdl.exe - это намного проще в самой Visual Studio.Если вы используете VS 2008 или более позднюю версию, щелкните правой кнопкой мыши свой проект, выберите Добавить ссылку на службу и укажите ее на WSDL на сервере, к которому вы будете подключаться (например, http://www.blahblah.com/service.asmx?WSDL), и он сгенерирует прокси-сервер).классы и параметры соединения в файле app.config.
Оттуда, где вы находитесь, создайте экземпляр сгенерированного им прокси-класса (убедитесь, что сгенерированное им пространство имен включено в оператор using
)и убедитесь, что он привязан к конечной точке:
BasicHttpBinding binding =
new BasicHttpBinding(BasicHttpSecurityMode.None);
binding.MaxReceivedMessageSize = int.MaxValue;
EndpointAddress address =
new EndpointAddress("http://webservices.blahblah.com/service.asmx");
MyService service = new MyServiceClient(binding, address);
, а затем вызовите для нее удаленные методы:
try
{
service.DoSomething("someParameter");
if (service.GetSomeStatus())
{
}
}
finally
{
(service as IDisposable).Dispose();
}
Для VS 2005 или более ранней версии используйте Добавить веб-ссылкуи остальная часть процедуры аналогична.