Xamarin.Forms Úvod do webových služeb
Toto téma poskytuje návod pro Xamarin.Forms ukázkovou aplikaci, která ukazuje, jak komunikovat s různými webovými službami. I když jednotlivé webové služby používají samostatnou ukázkovou aplikaci, jsou funkčně podobné a sdílejí společné třídy.
Ukázková aplikace seznamu úkolů uvedená níže slouží k předvedení toho, jak přistupovat k různým typům back-endu webové služby Xamarin.Forms . Poskytuje funkce pro:
- Zobrazení seznamu úkolů.
- Přidat, upravit a odstranit úkoly.
- Nastavte stav úlohy na Hotovo.
- Přečte pole jméno a poznámky v úkolu.
Ve všech případech se úlohy ukládají do back-endu, který je k dispozici prostřednictvím webové služby.
Po spuštění aplikace se zobrazí stránka, která obsahuje všechny úkoly načtené z webové služby a umožňuje uživateli vytvořit novou úlohu. Kliknutím na úlohu přejdete na druhou stránku, kde se dá úkol upravovat, ukládat, odstraňovat a přemluvený. Konečná aplikace je zobrazena níže:


Každé téma v této příručce poskytuje odkaz ke stažení na jinou verzi aplikace, která ukazuje konkrétní typ back-endu webové služby. Stáhněte si relevantní vzorový kód na stránce týkající se jednotlivých stylů webové služby.
Pochopení anatomie aplikace
Projekt sdíleného kódu pro každou ukázkovou aplikaci se skládá ze tří hlavních složek:
| Složka | Účel |
|---|---|
| Data | Obsahuje třídy a rozhraní používané ke správě datových položek a komunikaci s webovou službou. Přinejmenším to zahrnuje TodoItemManager třídu, která je vystavena prostřednictvím vlastnosti ve App třídě pro vyvolání operací webové služby. |
| Modely | Obsahuje třídy datového modelu pro aplikaci. Minimálně to zahrnuje TodoItem třídu, která modeluje jednu položku dat, kterou používá aplikace. Složka může obsahovat i další třídy, které se používají k modelování uživatelských dat. |
| Zobrazení | Obsahuje stránky pro aplikaci. To se obvykle skládá z TodoListPageTodoItemPage tříd a a dalších tříd používaných pro účely ověřování. |
Projekt sdíleného kódu pro jednotlivé aplikace se také skládá z řady důležitých souborů:
| Soubor | Účel |
|---|---|
| Konstanty. cs | ConstantsTřída, která určuje konstanty používané aplikací ke komunikaci s webovou službou. Tyto konstanty vyžadují aktualizaci pro přístup k vaší osobní back-end službě vytvořené na poskytovateli. |
| ITextToSpeech. cs | ITextToSpeechRozhraní, které určuje, že Speak Metoda musí být poskytnuta všemi implementací tříd. |
| Todo. cs | AppTřída, která je zodpovědná za vytváření instancí první stránky, která se zobrazí v aplikaci na každé platformě, a TodoItemManager třídy, která se používá k vyvolání operací webové služby. |
Zobrazit stránky
Většina ukázkových aplikací obsahuje alespoň dvě stránky:
- TodoListPage – Tato stránka zobrazuje seznam instancí a ikonu zaškrtnutí, pokud
TodoItem.Doneje vlastnosttrue. Kliknutím na položku přejdete naTodoItemPage. Nové položky lze navíc vytvořit kliknutím na + symbol. - TodoItemPage – na této stránce se zobrazují podrobnosti o vybraném a umožňují jeho úpravu, uložení, odstranění a mluvený pokus.
Kromě toho některé ukázkové aplikace obsahují další stránky, které slouží ke správě procesu ověřování uživatelů.
Modelování dat
Každá ukázková aplikace používá TodoItem třídu k modelování dat zobrazených a odeslaných do webové služby pro úložiště. Následující příklad kódu ukazuje TodoItem třídu:
public class TodoItem
{
public string ID { get; set; }
public string Name { get; set; }
public string Notes { get; set; }
public bool Done { get; set; }
}
Tato ID vlastnost slouží k jednoznačné identifikaci jednotlivých TodoItem instancí a používá se v každé webové službě k identifikaci dat, která se mají aktualizovat nebo odstranit.
Vyvolat operace webové služby
K operacím webové služby dochází prostřednictvím TodoItemManager třídy a k instanci třídy lze přistupovat prostřednictvím App.TodoManager Vlastnosti. TodoItemManagerTřída poskytuje následující metody pro vyvolání operací webové služby:
- GetTasksAsync – Tato metoda slouží k naplnění ovládacího prvku u
TodoListPageTodoIteminstancí načtených z webové služby. - SaveTaskAsync – Tato metoda slouží k vytvoření nebo aktualizaci instance webové služby.
- DeleteTaskAsync – Tato metoda slouží k odstranění instance webové služby.
Kromě toho některé ukázkové aplikace obsahují další metody ve TodoItemManager třídě, které slouží ke správě procesu ověřování uživatele.
Místo toho, aby se operace webové služby vyvolaly přímo, TodoItemManager metody vyvolávají metody na závislé třídě, která je vložena do TodoItemManager konstruktoru. Například jedna ukázková aplikace vloží RestService třídu do TodoItemManager konstruktoru, aby poskytovala implementaci, která pro přístup k datům používá rozhraní REST API.
Stažení ukázky