Jak: asynchroniczne wywołanie usługi sieci Web (Visual Basic)
W tym przykładzie dołącza program obsługi zdarzenia asynchroniczne obsługi usługi sieci Web, tak, że może ona pobrać wynik wywołania metody asynchronicznej.W tym przykładzie używana usługa sieci DemoTemperatureService Web na http://www.xmethods.NET.
Kiedy odwołanie usługi sieci Web w projekcie w Visual Studio zintegrowanym środowiskiem dewelopowania (IDE), jest on dodawany do My.WebServices obiektu i IDE generuje klasy proxy klienta, dostęp do określonej usługi sieci Web
Klasy proxy pozwala wywoływać metody usługi sieci Web synchronicznie, gdy aplikacja oczekuje na funkcji zakończyć.Ponadto serwer proxy tworzy dodatkowych członków w celu wywołania metody asynchronicznie.Dla każdej funkcji usługi sieci Web NameOfWebServiceFunction, tworzy serwer proxy NameOfWebServiceFunctionAsync podprocedurę, NameOfWebServiceFunctionCompleted zdarzenie, a NameOfWebServiceFunctionCompletedEventArgs klasy.W tym przykładzie przedstawiono sposób użycia członków asynchroniczny dostęp do getTemp funkcji usługi sieci DemoTemperatureService Web.
[!UWAGA]
Ten kod nie działa w aplikacji sieci Web, ponieważ program ASP.NET nie obsługuje My.WebServices obiektu.
Asynchroniczne wywołanie usługi sieci Web
Odwołanie do usługi sieci DemoTemperatureService Web na http://www.xmethods.NET.Adres jest
http://www.xmethods.net/sd/2001/DemoTemperatureService.wsdl
Dodawanie obsługi zdarzenia getTempCompleted zdarzeń:
Private Sub getTempCompletedHandler(ByVal sender As Object, ByVal e As net.xmethods.www.getTempCompletedEventArgs) MsgBox("Temperature: " & e.Result) End Sub
[!UWAGA]
Nie można użyć Handles oświadczenie powiązanie programu obsługi zdarzeń z My.WebServices obiektu zdarzenia.
Dodawanie pola do śledzenia, jeśli obsługa zdarzeń został dodany do getTempCompleted zdarzeń:
Private handlerAttached As Boolean = False
Dodaj metodę obsługi zdarzeń, aby dodać getTempCompleted zdarzenia, jeśli to konieczne i wywołać getTempAsynch metody:
Sub CallGetTempAsync(ByVal zipCode As Integer) If Not handlerAttached Then AddHandler My.WebServices. TemperatureService.getTempCompleted, AddressOf Me.TS_getTempCompleted handlerAttached = True End If My.WebServices.TemperatureService.getTempAsync(zipCode) End Sub
Wywołanie getTemp sieci Web metodą asynchronicznie, call CallGetTempAsync metody.Po zakończeniu wykonywania metody sieci Web, jego wartość zwracana jest przekazywana do getTempCompletedHandler programu obsługi zdarzeń.
Zobacz też
Informacje
Koncepcje
Uzyskiwanie dostępu do usługi sieci Web aplikacji (Visual Basic)