Buduję aplikację Windows Phone Store nachwilę i planuję zbudować aplikację Windows Store w przyszłości (Universal Windows App). Chcę zsynchronizować elementy przechowywane w lokalnej bazie danych SQLite ze zdalną bazą danych i między różnymi platformami (Windows Phone, Windows, ...).
Zrobiłem kilka wyszukiwania na temat mobilnych backendów i skończyło się na Usługi aplikacji Microsoft Azure dla urządzeń przenośnych z synchronizacja offline. Zanim zacznę, chcę wyjaśnić kilka ważnych pytań dla mnie.
- Mam różnych użytkowników, którzy będą uwierzytelniaćza pośrednictwem Facebooka, konta Microsoft itd. Jak rozróżniać poszczególne wpisy dla każdego użytkownika? Czy muszę dodać właściwość userId w każdej tabeli i wybrać tylko wpisy odnoszące się do identyfikatora użytkownika?
- Obecnie używam pakietu NuGet sqlite-netz rozszerzeniami sqlite-net w celu obsługi relacji takich jak Jeden do wielu, Wiele do wielu itp. Aplikacje mobilne Azure wydają się obsługiwać tylko proste obiekty i muszę ręcznie zarządzać relacją za pomocą klucza obcego.
- Ile kosztuje Usługi aplikacji Azure dla aplikacji mobilnych dla kilku tysięcy użytkowników, jeśli korzystam tylko ze zdalnej bazy danych z synchronizacją offline?
Odpowiedzi:
0 dla odpowiedzi № 1- Nie jestem pewien, czy to jest poprawna metoda, ale tak. Następnie możesz dostosować PullAsync, aby zwracać tylko rekordy odnoszące się do określonego użytkownika (https://github.com/Azure/azure-mobile-apps-net-client/issues/181).
- Tak. Obecnie nie obsługuje relacji dla bazy danych SQLite klienta. Musisz to zrobić ręcznie w swoim kliencie. Spójrz na odpowiedź Adriana "tutaj: (Synchronizacja danych offline w aplikacjach mobilnych Azure z widokami lub procedurą zapisaną)
- To zależy od twoich danych i typu bazy danych. Jeśli korzystasz z usługi Azure SQL Server, możesz zacząć od podstawowego planu z miesięczną opłatą w wysokości od 5 USD do 10 USD. W przypadku aplikacji mobilnej Azure można uruchomić bezpłatny abonament.