Cunoștințe, prelegere, webclient și httpwebrequest

HttpWebRequest

În anexă (fig. 29.2), sunt utilizate două pagini, una dintre ele, MainPage.xaml, afișează o listă a orașelor la simpla atingere a unei linii corespunzătoare oraș, vă duce la o pagină ForecastPage.xaml, care afișează prognoza meteo detaliată pentru orașul selectat. Mai multe clase auxiliare sunt utilizate în aplicație.







Cunoștințe, prelegere, webclient și httpwebrequest


click pentru a mari imaginea
Fig. 29.2. Proiectul aplicației care lucrează cu HttpWebRequest

Cunoștințe, prelegere, webclient și httpwebrequest


click pentru a mari imaginea
Fig. 29.3. Cereți să actualizați versiunea platformei de aplicații

Pentru a actualiza proiectul, faceți clic pe butonul Da din fereastra care apare. În acest caz, conversia era normală, aplicația și-a păstrat funcționalitatea. În această transformare, trebuie avut în vedere faptul că, deși majoritatea mecanismelor de platformă sunt compatibile, există diferențe în implementarea anumitor API-uri care pot interfera cu funcționarea normală a aplicației fără efort suplimentar pentru a aduce aplicația în viziunea corectă.

În aplicație, maparea datelor este utilizată pentru afișarea datelor în interfață. În fișierul City.cs definește structura de bază de date pentru stocarea de informații despre oraș, pentru care se poate afișa informații despre vreme, a crea o listă de orașe din Cities.cs fișier pentru a afișa pagina de start. Clasa de asistență ForecastPeriod.cs definește structura de date pentru stocarea prognozei meteo pentru o anumită perioadă. Funcția principală a aplicației, care, printre altele, implică utilizarea HttpWebRequest și mecanismele legate pentru a prelua date de la serviciul de prognoză meteo, implementat în fișierul .cs meteo.







Pe pagina MainPage este afișată o listă de orașe, este afișată în listă, a cărei sursă de element este setată la un obiect de tip Orașe, declarat în clasa App. Când atingeți un element, se solicită pagina ForecastPage cu parametrii corespunzători orașului selectat.

Un obiect de tip Forecast este definit în fișierul de cod al acestei pagini. când te duci la o pagină în cazul OnNavigatedTo, extras parametrii transmiși la acesta atunci când trecerea la acesta din pagina de start, și apoi creează un nou obiect de prognoza tip și numită metoda lui GetForecast de a indica latitudinea și longitudinea orașului selectat. Acest obiect este setat ca context de date al paginii. Câmpul ForecastList este setat ca sursă de date pentru lista de pe pagină și care afișează prognoza meteo.

Listing 29.4. Fragmentul codului de prognoză Forecast.cs

Apoi, se face un apel asincron BeginGetResponse. Un delegat AsyncCallback este transferat în apel, care se referă la metoda care trebuie apelată atunci când operația asincronă se termină. Al doilea parametru de apel este obiectul forecastState, care stochează în prezent o referință la obiectul cerere în câmpul AsyncRequest.

Când operația de solicitare a datelor asincrone de la serviciul web este terminată, se apelează metoda HandleForecastResponse. Această metodă are asyncResult proprietate argument AsyncState, care permite accesul la al doilea parametru (forecastState), care a fost transmis în cererea de apel de proprietate web asincron.

Schema generală de lucru cu HttpWebRequest este următoarea:

  1. Formarea solicitărilor
  2. Creați un obiect HttpWebRequest, dacă este necesar, configurați parametrii.
  3. Crearea unei metode care va fi apelată când operația asincronă este terminată, această metodă completează cererea și obține rezultatele interogării potrivite pentru parsarea ulterioară.
  4. Efectuarea unui acces asincron la serviciul web.

Materiale suplimentare







Articole similare

Trimiteți-le prietenilor: