2017-04-21 16 views
0

私は、オフライン同期を有効にするためにモバイルアプリ用Azure SDKを使用しようとしています。問題は、現在、他のアプリケーションで使用されている既存のデータベースがあることです。既存のSQLデータベースでAzure Mobile Appサービスを使用する

したがって、int primary idをNVARCHAR GUIDに変更するなど、既存のテーブルを変更できませんでした。

私は、ここやさまざまなブログの他の回答に続き、データベース内の各テーブルのシステムテーブルを作成し、各テーブルのビューと更新と削除を処理するトリガーを作成しました。

このアプローチでは、テーブルごとにビューを作成しましたが、テーブルに外部キーが含まれています。関連するテーブルの各列を1つのビューに追加して、参照テーブルごとにトリガとシステムテーブルを処理できますか?それともそれ以上のことはありますか?

関係がある既存のデータベースに関する詳細な文書がある場合、私はそれを見ていません。

答えて

0

オフライン状態では、自動増分整数IDまたは整数IDの代わりにGUIDを使用して、非同期競合を解決します。 GUIDは、転送中に文字列として格納されます。 SQLデータベース内のテーブルを定義するために使用されるデータ転送オブジェクト(DTO)クラスは、EntityDataクラスから継承する必要があることがわかりました。しかし、既存のテーブルを変更することはできません。私のオプションでは、文字列IDを使用しないと、オフライン同期を使用できないようです。

詳細はusing an existing sql tablerelationshipsを参照してください。

関連する問題