私はXamarin.iOSアプリケーションからオフライン同期をいくつかしようとしています。 IMobileServiceSyncTableでPullAsyncを呼び出すと、呼び出しは返されません。Azureモバイルサービスオフライン同期
通常のIMobileServiceTableを試してみましたが、正常に動作しているようです。作品
var client = new MobileServiceClient(ApiUrl);
var store = new MobileServiceSQLiteStore("syncstore.db");
store.DefineTable<Entity>();
await client.SyncContext.InitializeAsync(store);
table = client.GetSyncTable<Entity>();
try
{
await table.PullAsync("all", table.CreateQuery());
}
catch (Exception e)
{
Debug.WriteLine(e.StackTrace);
}
return await table.ToListAsync();
はコード:
var client = new MobileServiceClient(configuration.BaseApiUrl);
return await table.ToListAsync();
誰もが何かを指摘することができます同期の表は、私のために動作しません
コードは動作しません。ここでの事のようですそれは間違っているようですか?私はどんな方向にも私を指摘する何も例外も何も得ていない - それは決して完了しない。
UPDATE 1: コールスタックのどこかで待っていたのではなく、Task.ResultまたはTask.Wait()を実行したため、人々が同様の問題を抱えていたことが分かりました。しかし、私は私の全体のチェーンを通してこの呼び出しを待っています。例:私が書いたユニットテストは、上記と全く同じ動作をしています。ハングアップし、決して戻る。
[Fact]
public async Task GetAllAsync_ReturnsData()
{
var result = await sut.GetAllAsync();
Assert.NotNull(result);
}
UPDATE 2: 私はユニットテストによって送信要求に盗聴されてきました。何度も何度も何度もhttp-requestをやり続けていて、その操作を止めることはないので、ハングしているようです。