Cum să adăugați servicii mobile Azure la o aplicație Windows Phone

Aplicațiile Windows Phone care utilizează plăci vii, autentifică utilizatorii cu semn unic și distribuie date între dispozitive și utilizatori folosesc în general servicii cloud. Cele mai multe platforme cloud oferă capabilități generale pentru stocarea datelor și executarea codului, dar trebuie să adăugați o mulțime de coduri de infrastructură pentru a lipi împreună aceste capabilități. Azure Mobile Services vă permite să adăugați servicii cloud în aplicația dvs. în câteva minute.

Introducere

Acest tutorial vă arată cum să adăugați un serviciu backend la o aplicație Windows Phone folosind serviciile Azure Mobile Services. Veți crea un nou serviciu mobil și o aplicație simplă de întreținere care stochează datele sale în cloud utilizând noul serviciu mobil. În acest tutorial, veți învăța cum să:

  • creați un serviciu mobil și adăugați tabele la acesta
  • actualizați aplicația pentru a utiliza serviciul mobil
  • testați serviciul mobil găzduit pe serviciile mobile Azure

Pentru a urma împreună cu mine, aveți nevoie de un cont Windows Azure. Vă puteți înscrie pentru un proces Windows Azure dacă nu aveți încă un cont. 

1. Creați un serviciu mobil

Mai întâi trebuie să configurați un nou serviciu mobil care să poată fi utilizat de aplicația Windows Phone. Serviciul mobil pe care îl veți crea în acest tutorial este un serviciu mobil de backend din JavaScript. Acesta vă permite să utilizați JavaScript pentru logica de afaceri de la server. Urmați acești pași pentru a crea un nou serviciu mobil utilizând Portalul de administrare Azure.

Pasul 1: Adăugați un serviciu mobil

Conectați-vă la Portalul de administrare Azure și faceți clic pe NOU în bara de navigare. Extinde Compute> Serviciul Mobil și faceți clic Crea.

 Pasul 2: Selectați tipul bazei de date, regiunea și durata de execuție

În Nou serviciu mobil wizard, selectați o bază de date SQL 20 MB gratuită sau utilizați una dintre bazele dvs. de date existente. Selectați JavaScript de la backend și introduceți un subdomeniu pentru noul serviciu de telefonie mobilă din URL- casetă de text.

Rețineți că numele serviciului mobil trebuie să fie unic. O eroare este afișată lângă URL- când numele / subdomeniul pe care l-ați introdus nu este disponibil.

Pasul 3: Specificați setările bazei de date

Când creați un nou serviciu mobil, acesta este asociat automat cu o bază de date SQL. Backend-ul Azure Mobile Services furnizează apoi suport integrat pentru a permite aplicațiilor de la distanță să stocheze și să recupereze în siguranță datele de pe acestea, fără a fi nevoie să scrieți sau să implementați un cod de server personalizat.

Pentru a configura baza de date, introduceți numele bazei de date în Nume camp. Apoi, introduceți Numele serverului de conectare și Parola de conectare la server pentru a accesa serverul de baze de date SQL.

Faceți clic pe marcajul din partea dreaptă jos pentru a finaliza procesul. Ați creat acum un nou serviciu mobil care poate fi utilizat de aplicațiile dvs. mobile. Înainte de a putea începe stocarea datelor, trebuie mai întâi să creați un tabel care să stocheze datele aplicației dvs..

Rețineți că utilizarea unei baze de date într-o altă regiune nu este recomandată din cauza costurilor suplimentare de lățime de bandă și de latențe mai mari.

2. Adăugați un tabel la serviciul mobil

În acest pas, vom adăuga un tabel numit ToDoItem la serviciul mobil, care va fi folosit de aplicația client pentru a salva elementele de rezolvat ale utilizatorului.

Pasul 1: Creați o tabelă nouă

De la Date în tabul Azure Management Portal, clic Crea pentru a adăuga o nouă masă serviciului mobil. Denumiți tabelul ToDoItem și setați un nivel de permisiune pentru fiecare operație. Pentru ToDoItem tabel, am folosit setările implicite de permisiune.

Faceți clic pe marcajul de selectare din dreapta jos pentru a finaliza procesul de configurare a mesei. În doar câteva secunde, ați adăugat ToDoItem tabel la serviciul mobil.

Pasul 2: Adăugați coloane în tabel

ToDoItem tabelul conține deja un număr de coloane pentru stocarea id-ului, data creării, starea eliminată, data actualizată și informațiile despre versiune. Pentru a face tabelul util pentru aplicația noastră, trebuie să adăugăm două coloane suplimentare, unul pentru stocarea textului elementului de rezolvat și unul pentru stocarea stării elementului de rezolvat.

Pentru a adăuga coloanele suplimentare, faceți clic pe Adăugați o coloană de la coloane din tabelul ToDoItem masa. text coloana este de tip Şir si terminat coloana este de tip boolean.

Acestea sunt coloanele din ToDoItem masa.

Acum, când am creat serviciul nostru mobil și am adăugat o tabelă, aveți două opțiuni: să creați o aplicație nouă sau să conectați o aplicație existentă la serviciul mobil. În acest tutorial, vom modifica o aplicație Windows Phone existentă pentru a utiliza serviciul mobil.

3. Configurați aplicația pentru a utiliza serviciul mobil

Aplicația trebuie să fie configurată corect pentru a utiliza serviciul mobil. Trebuie să adăugați cod pentru a conecta aplicația la serviciul dvs. mobil și pentru a salva date în cloud.

Faceți clic dreapta pe numele proiectului în Soluție Explorer și alegeți Adăuga Serviciul conectat din meniu. În Adăugați un serviciu conectat caseta de dialog care apare, alegeți Azure Mobile Services și faceți clic pe Configurarea.

Apoi, alegeți serviciul mobil pe care l-ați creat mai devreme din lista serviciilor existente din contul dvs. Va trebui să furnizați acreditările pentru conectarea și lista serviciilor mobile din contul dvs. Windows Azure.

Selectați serviciul mobil pe care l-am creat și faceți clic pe Adăuga pentru a finaliza procesul. Expertul va adăuga apoi toate referințele necesare la proiectul dvs. Referințele pot fi adăugate manual și prin instalarea pachetului necesar NuGet. Faceți clic dreapta pe proiectul dvs. client, selectați Gestionați pachetele NuGet, căutați pentru WindowsAzure.MobileServices pachet și adăugați o referință pentru pachet.

Expertul instalează cerințele necesare NuGet pachete, adaugă o referință pentru biblioteca clientului serviciului mobil în proiect și actualizează codul sursă al proiectului. Expertul adaugă, de asemenea, un nou câmp static la App clasa care arată astfel:

static public Microsoft.WindowsAzure.MobileServices.MobileServiceClient todolistClient = nou Microsoft.WindowsAzure.MobileServices.MobileServiceClient ("https://todolist.azure-mobile.net/", "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");

Acest cod oferă accesul la noul serviciu mobil în aplicația dvs. utilizând o instanță a aplicației MobileServiceClient clasă. Clientul este creat furnizând URI-ul și cheia aplicației noului serviciu mobil. Acest câmp static este disponibil pentru toate paginile din aplicația dvs. Trebuie să adăugați manual acest cod App.xaml.cs dacă nu utilizați expertul.

4. Actualizați aplicația pentru a utiliza serviciul mobil

Trebuie să actualizați aplicația Windows Phone pentru a utiliza serviciul mobil ca serviciu de backend. Trebuie doar să faceți modificări la MainPage.cs fișier de proiect.

Pasul 1: Adăugați ToDoItem Definiția clasei

Adăugați o nouă clasă de model, ToDoItem, la proiectul dvs. Clasa de model conține proprietăți corespunzătoare coloanelor din ToDoItem masa pe care am creat-o mai devreme.

clasa publică ToDoItem șirul public Id get; a stabilit;  [Newtonsoft.Json.JsonProperty (PropertyName = "text")] șir public Text get; a stabilit;  [Newtonsoft.Json.JsonProperty (PropertyName = "completă")] bool public Completă get; a stabilit;  public ToDoItem ()  public ToDoItem (text șir, bool status = false) Text = text; Complete = status; 

JsonPropertyAttribute metoda este utilizată pentru a defini maparea între numele proprietăților în aplicația client și numele coloanelor din tabelul corespunzător. O referință la Newtonsoft.Json pachetul trebuie adăugat la proiect pentru a face acest lucru.

Pasul 2: Adăugați codul pentru a insera și a prelua elemente

Adăugați următoarele utilizând declarație la MainPage.xaml.cs:

utilizând Microsoft.WindowsAzure.MobileServices;

Adăugați următoarele linii în partea de sus a paginii MainPage.xaml.cs pentru a crea o colecție de legare la nivel de serviciu mobil și o clasă proxy pentru tabela de baze de date.

private MobileServiceCollection articole; privat IMobileServiceTable todoTable = App.tutsplusdemoClient.GetTable();

Apoi, creați un InsertToDoItem pentru a introduce un element nou în tabel. Adaugă async modificați metoda și adăugați următorul cod pentru a insera un element.

async publică async InsertToDoItem (ToDoItem toDoItem) aștepta todoTable.InsertAsync (toDoItem); items.Add (toDoItem); 

Acest cod funcționează dacă tabelul dvs. are setările permisiunilor Oricine are o cheie de aplicație. Dacă modificați permisiunile pentru a vă proteja serviciul mobil, va trebui să adăugați asistență pentru autentificarea utilizatorilor. Consultați Adăugarea autentificării utilizând serviciile mobile Azure. 

Creeaza o RefreshTodoItems metodă care stabilește legarea la colectarea de elemente în ToDoItem tabel, care conține toate ToDoItem obiecte returnate de la serviciul mobil. Afișăm o casetă de mesaje dacă apare o problemă în timpul executării interogării.

async privat Task RefreshTodoItems () MobileServiceInvalidOperationException exception = null; încercați // Interogare care returnează toate elementele. items = așteaptă todoTable.ToCollectionAsync ();  captură (MobileServiceInvalidOperationException e) excepție = e;  if (excepție! = null) așteptați noi MessageDialog (exception.Message, "Eroare la încărcarea elementelor") ShowAsync ();  altfel ListItems.ItemsSource = items; this.ButtonSave.IsEnabled = adevărat;  

Pasul 3: Adăugați controale la MainPage.xaml

Acum trebuie să ne actualizăm MainPage.xaml pentru a afișa elementele de rezolvat și pentru a adăuga capacitatea de a adăuga elemente de rezolvat. Mai jos este ceea ce ar putea arata codul XAML pentru o interfata de utilizator simpla care contine a Casetă de text pentru a insera elemente și a ListView pentru a vizualiza elementele de rezolvat.

                      

 InsertToDoItem metoda este numită atunci când Salvați este apăsat butonul care introduce elementul de rezolvat în tabel.

privat async void ButtonSave_Click (expeditor obiect, RoutedEventArgs e) var todoItem = new TodoItem Text = TextInput.Text; așteaptă InsertTodoItem (todoItem); 

RefreshToDoItems metoda este invocată când Reîmprospăta butonul este apăsat. În această metodă, preluăm toate elementele din tabel.

async privat async ButtonRefresh_Click (expeditor obiect, RoutedEventArgs e) ButtonRefresh.IsEnabled = false; // așteptați SyncAsync (); // sincronizarea offline așteaptă RefreshTodoItems (); ButtonRefresh.IsEnabled = true; 

5. Testați serviciul mobil

Ultimul pas al acestui tutorial este de a revedea datele stocate în serviciul mobil. În portalul clasic Windows Azure, faceți clic pe ToDoItem tabelul de sub Date fila serviciului dvs. mobil. Sub Naviga , puteți vizualiza toate elementele din tabel.

Concluzie

Acest tutorial demonstrează elementele de bază ale utilizării Azure Mobile Services ca suport pentru o aplicație Windows Phone. Crearea unui serviciu mobil și utilizarea acestuia în aplicația de stocare a datelor în cloud este ușor de implementat.

Scenariile complexe implică sincronizarea datelor offline. De asemenea, puteți adăuga suport pentru sincronizarea datelor offline în aplicația care urmează acestui tutorial. Puteți restricționa permisiunile de masă pentru a permite numai utilizatorilor autentificați să actualizeze tabelul urmând acest articol Envato Tuts +.

Simțiți-vă liber să descărcați fișierele sursă ale tutorialului pentru referință. Nu uitați să configurați aplicația să utilizeze serviciile Azure Mobile Services înainte de ao implementa.

Cod