Четвертая строка ниже внезапно перестала работать. Ошибка исключения: «Операция Pu sh завершилась неудачно. Подробности см. В PushResult». Когда я заглядываю внутрь исключения, все, что я получаю, - это стандартная «ссылка на объект, а не экземпляр на экземпляр объекта» как часть внутреннего исключения.
public async void SyncPushOnly()
{
ReadOnlyCollection syncErrors = null;
try
{
await this.client.SyncContext.PushAsync(); <-- This line suddenly stopped working
}
catch (MobileServicePushFailedException exc)
{
if (exc.PushResult != null)
{
syncErrors = exc.PushResult.Errors;
}
System.Diagnostics.Debug.WriteLine("Exception in SyncPushOnly EXC: " + exc.Message, "ERROR");
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine("Exception in SyncPushOnly EX: " + ex.Message, "ERROR");
}
// Simple error/conflict handling. A real application would handle the various errors like network conditions,
// server conflicts and others via the IMobileServiceSyncHandler.
if (syncErrors != null)
{
foreach (var error in syncErrors)
{
if (error.OperationKind == MobileServiceTableOperationKind.Update && error.Result != null)
{
//Update failed, reverting to server's copy.
await error.CancelAndUpdateItemAsync(error.Result);
}
else
{
// Discard local change.
await error.CancelAndDiscardItemAsync();
}
Debug.WriteLine(@"Error executing SyncAuthSync operation. Item: {0} ({1}). Operation discarded.", error.TableName, error.Item["id"]);
}
}
}