Web Services – klient ASP.net

Web Services mogą być szeroko wykorzystywane w platformie .NET Framework, w tym na stronach ASP.net, które służyć mogą celom administracyjnym usług Web Services lub spełniać rolę pełnoprawnego klienta usługi. Rozważę tutaj rolę klienta usługi z poziomu ASP.net, gdyż część administracyjna będzie odnosiła się do szerszych pojęć takich jak bezpieczeństwo danych oraz autoryzacja.

Tworzenie referencji do usługi Web Services

Projekt rozpoczynamy od utworzenia standardowej strony ASP.net z pozycji menu File -> New -> Web Site -> ASP.net Web Site. Następnie musimy utworzyć referencję do usługi Web Service, z której chcemy korzystać. Aby wykonać tę czynność, musimy otworzyć projekt z utworzoną Web Service w drugim oknie Visual Studio oraz uruchomić ją na serwerze lokalnym poprzez F5. Uruchomi się ona wówczas w oknie przeglądarki, która wskaże adres Web Services na serwerze lokalnym.

W oknie Visual Studio z projektem naszej czystej strony internetowej ASP.net z poziomu Solution Exploler wybieramy Add Service Reference, następnie kolejno Advanced oraz Add Web Reference, gdzie w pole URL kopiujemy adres naszej usługi Web Services otwartej w przeglądarce, w pole Web Reference name wpisujemy CEWebService.

Nowa referencja do usługi Web Services

Nowa referencja do usługi Web Services

Po utworzeniu nowej referencji do naszej usługi Web Services, możemy w pełni korzystać z udostępnianych przez nią metod w sposób obiektowy.

Interfejs oraz zadania aplikacji klienckiej usługi Web Services

Do głównych zadań aplikacji klienckiej ASP.net należy dodawanie nowego rekordu danych oraz odczytywanie danych z bazy danych usługi Web Services.

Sam interfejs aplikacji ASP.net ogranicza się jedynie do tych podstawowych zadań.

Kontrolka GrdiView [4] ma za zadanie wyświetlić dane z bazy danych usługi Web Services. Istotnym jest, aby jej właściwość AutoGenerateColumns ustawiona była na True.

Pozostałe kontrolki, to tradycyjny zestaw Table, TextBox oraz Button.

Realizacja wykonywania zadań przez aplikację kliencką ASP.net

W pierwszej kolejności musimy utworzyć obiekt myService odpowiedzialny za komunikację z nasza usługą Web Services [3].

Następnie z wprowadzonych danych należy utworzyć nowy dokument XML według opisanego już na blogu sposobu. Dokumentu XML nie zapisujemy jednak do pliku na dysku twardym, a przekazujemy go w postaci argumentu do metody SetProductXml usługi Web Services [24]. Wykorzystujemy przy tym metodę AddMyNode.

Obiekt myService pozwala nam na korzystanie ze wszystkich metod udostępnionych za pośrednictwem Web Services. Przy pomocy tego samego obiektu myService możemy wywołać metodę GetProducts, która zwróci dokument XML zawierający dane przechowywane w bazie danych usługi Web Services, z której korzystamy.

Jak więc widzimy korzystanie z metod usług Web Services jest dosyć proste i nie odbiega od standardowych rozwiązań programowania obiektowego zwykłych aplikacji. Musimy utworzyć jedynie referencję do usługi, na jej podstawie utworzyć obiekt należący do klasy usługi sieciowej i od tego momentu możemy swobodnie korzystać z udostępnianych przez nią metod.

Wczytanie danych do GridView podczas startu aplikacji odbywa się poprzez wykorzystanie zdarzenia PreRender kontrolki GridView, jak miało to miejsce we wpisie Obiekt XML jako źródło danych dla kontrolki GridView w ASP.net.

Podobny sposób postępowania będzie towarzyszył nam podczas korzystania z metod usług Web Services również w przypadku innych rozwiązań programistycznych.

Przykładowy projekt zawierający usługę Web Services oraz aplikację ASP.net znajduje się pod linkiem: Web Services – klient ASP.net

Enhanced by Zemanta
Loading Disqus Comments ...
Loading Facebook Comments ...