私は単純にWindows 10アプリケーションを作成しています - セールスマネージャー。 3つのテーブルのみ。私はローカルsqliteデータベースを持っています。私はこのデータベースをバックアップしたり同期したりする簡単な方法を探しています。 databaeが小さいので、私はフルシンクロについて常に考えています。たとえば、「Send database」をクリックして、デバイスからフルデータをサーバに送信します。 [ダウンロード]をクリックすると、すべてのデータベースがダウンロードされます。私はデータベースを保存するためのアドバイスに感謝しますsqlite - データベースシンクロ/ bakup - windows 10 mobile
答えて
IMHO、OneDrive's App Folderを利用してSQLiteデータベースをバックアップすることができます。
アプリケーションフォルダは、お使いのアプリ専用の専用フォルダです。 Appフォルダは、通常、アプリケーションの名前が付けられ、ユーザーのOneDriveのAppsフォルダにあります。
onedrive.appfolder
のアクセス許可の範囲を要求し、ユーザーがそれを承認すると、アプリケーションはこのフォルダーに対して読み取りと書き込みのアクセス権を取得します。
そして、C#の場合、アプリケーションでOneDrive SDK for CSharpを使用できます。
private async Task<Item> UploadDBFile()
{
StorageFile DBFile = await ApplicationData.Current.LocalFolder.GetFileAsync("db.sqlite");
var oneDriveClient = await OneDriveClientExtensions.GetAuthenticatedUniversalClient(new[] { "onedrive.appfolder" });
using (var contentStream = await DBFile.OpenStreamForReadAsync())
{
return await oneDriveClient.Drive.Special.AppRoot.ItemWithPath("backup.sqlite").Content.Request().PutAsync<Item>(contentStream);
}
}
をなどデシベルをダウンロードします。たとえば、次のようなデータベースファイルを送信することができます
private async Task DownloadDBFile()
{
var oneDriveClient = await OneDriveClientExtensions.GetAuthenticatedUniversalClient(new[] { "onedrive.appfolder" });
using (var contentStream = await oneDriveClient.Drive.Special.AppRoot.ItemWithPath("backup.sqlite").Content.Request().GetAsync())
{
StorageFile downloadedFile = await ApplicationData.Current.LocalFolder.CreateFileAsync("DownloadedDB.sqlite",
CreationCollisionOption.ReplaceExisting);
using (var writerStream = await downloadedFile.OpenStreamForWriteAsync())
{
contentStream.CopyTo(writerStream);
}
};
}
そのアプリケーションでOneDrive APIを使用するように注意してください、あなたが最初にアプリケーションを登録する必要がありますOneDriveの場合はthese stepsに従ってください。
ローカルデータベースを同期するには、Offline Data Sync in Azure Mobile Appsで試すこともできます。これはデータベースのバックアップよりも強力です。
アプリがオフラインモードでも、ユーザーはデータを作成して変更することができますが、これはローカルストアに保存されます。アプリがオンラインに戻ると、ローカルの変更をAzure Mobile Appバックエンドと同期させることができます。この機能には、クライアントとバックエンドの両方で同じレコードが変更された場合の競合の検出もサポートされています。競合は、サーバーまたはクライアントのいずれかで処理できます。
オフライン同期は多くの利点があります。
- は、デバイス
- 上でローカルサーバーのデータをキャッシュすることで、アプリの応答性を向上させ、ネットワークの問題が
- がある場合、エンドユーザーの許可便利残る堅牢なアプリケーションを作成します。ネットワークアクセスがなくてもデータを作成したり変更したりすることができます。
- 2台のデバイスで同じレコードが変更された場合、複数のデバイス間でデータを同期して競合を検出します。
高遅延または計量ネットワーク
上
- 1. windows 10 mobile camera
- 2. Sqlite for Cordova Windows 10 UWP
- 3. 画面上の黒いスペースWindows 10 Mobile
- 4. Windows Mobile 10エミュレータと電話で
- 5. レイアウト - Windows 10 mobile - 不要なストライプ
- 6. Windows Mobile 10バックグラウンドタスクDNSが失敗する
- 7. のWindows 10 UWP - エンティティコアsqliteは:Windowsの10 UWPアプリケーションでクエリエラー
- 8. Windows Mobile 8.1のCordovaビルドはWindows Mobile 10と互換性がありません
- 9. Windows 10のUbuntu上のBashはWindows 10 Mobile版で利用できますか?
- 10. ユニバーサルWindowsアプリケーション(UWP)でWindows Mobile 10 /携帯電話
- 11. Delphi 10 Seattleを使用してWindows 10 Mobileアプリケーションを作成できますか?
- 12. Windows Mobile 10のphonegapアプリのスクリーンスケーリングの問題
- 13. Windows 10 MobileでのローカルWCFサービスの使用
- 14. Windows 10 Mobileで 'ms-winsoundevent'スキームのサウンドが再生されない
- 15. VS 2017 RCにはWindows 10 Mobileエミュレータがありません
- 16. Windows Mobile 10の最大ジオフェンスの制限は何ですか?
- 17. Windows 10 Mobile Appを展開する際の問題
- 18. .NET 3.5 Compact FrameworkアプリケーションからWindows 10 Mobileへの移行
- 19. Windows 10 Mobileでカメラを分割する方法
- 20. BackgroundAudioはWindows Mobile 10で動作しません
- 21. Windows 10 UWPシングルサインオン
- 22. jquery mobile 2桁10進数
- 23. Windows Mobile BackgroundWorker
- 24. Windows Mobile - 設定
- 25. Windows MobileのopenCV
- 26. Windows Mobileのシェルスクリプト/
- 27. c#windows mobile getdeviceid()
- 28. Windows Mobileコマンドラインコンパイラ
- 29. windows mobile list view
- 30. windows mobile camera
本当に小さなデータでは、変更されたデータのみを更新する同期手順を作成する意味がありません – Steve