Веб-сервис Silverlight - PullRequest
       6

Веб-сервис Silverlight

3 голосов
/ 04 августа 2010

Ниже приведен код, который я использовал для использования веб-службы в SilverLight.

private void button1_Click(object sender, RoutedEventArgs e)
{
      BasicHttpBinding bind = new BasicHttpBinding();
      EndpointAddress endpoint = new EndpointAddress("http://loalhost/Service.asmx");
      ServiceSoapClient client = new ServiceSoapClient(bind, endpoint);
      client.RunHelloCompleted += new EventHandler<RunHelloCompletedEventArgs>(client_RunQwinCompleted);
      client.RunHelloAsync(command);
 }

 void client_RunHelloCompleted(object sender, RunHelloCompletedEventArgs e)
 {
      txtProcess.Text=Process(e.Result);
 }

Я хочу узнать, как после запуска RunHelloAsync (Command) я хочу получить возвращенный результат без перехода кЗавершенное мероприятие.Пожалуйста, посоветуй мне.спасибо.

1 Ответ

3 голосов
/ 04 августа 2010

Простой ответ: Вы не можете.Все в Silverlight является асинхронным, поэтому после вызова client.RunHelloAsync(command) невозможно заблокировать и дождаться результата.

Длинный ответ: есть способы симулировать работу с вызовами синхронно, но вызовы все ещеделается асинхронно.Взгляните на эту ветку , чтобы найти еще несколько ответов.

...