WCF полезен для создания клиента, который использует веб-сервис, отличный от WCF? - PullRequest
4 голосов
/ 09 августа 2009

Я новичок в WCF, и у меня ограниченный опыт программирования веб-сервисов.

На работе было продиктовано использование WCF для всего, что ориентировано на сетевые сервисы. Работа, которую мне нужно сделать, включает в себя запрос веб-службы не-WCF, очевидно построенной на Java, с сервером сертификатов Netscape и соответствующей инфраструктурой (служба не находится под нашим контролем). У меня есть WSDL для веб-службы.

  1. Добавляет ли WCF какое-либо значение к этой работе?

  2. Разумно, нормально или лучше создать клиент WCF для службы, отличной от WCF?

  3. Кто-нибудь может дать совет по этому поводу?

Спасибо !!!

Ответы [ 2 ]

4 голосов
/ 09 августа 2009

Да, клиент WCF может работать против веб-службы, созданной с помощью другой технологии или платформы. Это довольно часто. В Visual Studio код клиента на стороне клиента создается для вас из WSDL, и вы можете вызывать удаленную службу, как если бы это был локальный код.

Чтобы не использовать бесстыдный плагин, вот пример клиента WCF, вызывающего веб-сервис Amazon S3 , который, безусловно, не построен с использованием .NET. Пример демонстрирует типичный рабочий процесс при создании клиента WCF:

  1. Добавьте ссылку на службу к веб-службе, указав Visual Studio на URL-адрес WSDL. Вам не нужно ничего кодировать на этом шаге.

  2. Вызовите веб-сервис из вашего кода. В приведенном ниже коде класс AmazonS3Client был создан Visual Studio на шаге 1 выше. Вы получаете полный смысл при вводе client.ListAllMyBuckets для вызова этой службы.

static void Main(string[] args) {  
    DateTime       now    = LocalNow();  

    // create the web service client object
    AmazonS3Client client = new AmazonS3Client();  

    // invoke the web service
    var result = client.ListAllMyBuckets(  
        accessKeyId,  
        now,  
        SignRequest(secretAccessKey, "ListAllMyBuckets", now));  

    // show the results returned from the web service
    foreach (var bucket in result.Buckets) {  
        Console.WriteLine(bucket.Name);  
    }  
}  
0 голосов
/ 17 октября 2010

Пожалуйста, смотрите статью, опубликованную на http://justcompiled.blogspot.com/2010/10/building-web-service-client-with-wcf.html с темой, Создание клиента веб-службы с WCF

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...