0

現在、私はXamarinとAzure App Service Mobile Appをクラウドバックエンドとして使用してアプリケーションを構築しています。問題は、AzureでホストされているDB内の対応するテーブルからいくつかのデータを削除すると、削除されたレコードを要求しようとするため、モバイルデバイスの次のPullAsync呼び出しが失敗するということです。 Azure DBで最初に起こったレコードの削除を同期させる方法はありますか?Azure Appサービスデータが削除された場合、Mobile Appデータベース同期に失敗する

他の方法でスムーズに動作します。デバイスからレコードを削除すると、対応するレコードがAzure DBで削除されます。

答えて

1

TableControllerあなたが必要とするサーバーごとに、有効にすることによってソフト削除を使用する必要があります。ここにはTodoItemTableControllerの例があります。

protected override void Initialize(HttpControllerContext controllerContext) 
{ 
    base.Initialize(controllerContext); 
    MobileServiceContext context = new MobileServiceContext(); 
    DomainManager = new EntityDomainManager<TodoItem>(context, Request, enableSoftDelete: true); 
} 

詳細情報here

+0

私は昨日とまったく同じ方法を考えていましたが、実際にレコードを削除して解決策があることを願っていました。さて、これを答えにするつもり!ありがとう! –

+0

私はこれに関連する別の質問があります:EntityDataクラスで私はソフト削除のために使用できると思われる "Deleted"という名前の既存のプロパティを見つけました。問題は、モバイルクライアントで値を更新すると値がAzureにプッシュされず、次のプルで元の値のfalseに書き換えられるということです。それを使用する方法はありますか、カスタムカラムを作成する必要がありますか? –

+0

私が見つけたのは、何らかの理由でUpdateAsyncがローカルデバイスのストレージに「削除済み」という文字を書き込んでいないということです。そのため、Azureに同期されません。いいえ、この問題の解決策を見つけることはできません –

関連する問題