Die Offline-Synchronisations-API von Azure bietet kein vollständiges ORM, bietet jedoch eine grundlegende Zuordnung von Klasse zu Tabelle.Initialisierung der Klasse-zu-Tabelle-Zuordnung in der Offline-Synchronisierungs-API von Azure
Die sample project ‚s TodoItemManager
hat dies:
store.DefineTable<TodoItem>();
dies sollte nur auf der mobilen App auf ersten Lauf durchgeführt werden, oder ist es sicher jedes Mal nennen es beginnt? Führt es also eine Operation "create if not exist" aus?
Und was, wenn sich das Schema der Klasse ändert?
Wenn sich meine Klasse ändert, aktualisiert die API automatisch das Schema der zugeordneten Tabelle? Mit anderen Worten, gibt es eine offizielle Möglichkeit für uns, Migrationen durchzuführen? –
@hbob Wenn Sie Spalten hinzufügen, fügt das SDK diese zum lokalen Speicher hinzu. Es ist jedoch keine echte Migrationsunterstützung - die neuen Spalten haben beispielsweise Nullwerte und das SDK löscht keine Spalten. Für echte Migrationsunterstützung müssten Sie Ihre eigene lokale Speicherebene implementieren. Siehe https://github.com/Azure/azure-mobile-apps-net-client/blob/master/src/Microsoft.WindowsAzure.MobileServices.SQLiteStore/MobileServiceSQLiteStore.cs#L487. –