Я использую Microsoft.Azure.Mobile.Client для выполнения автономной синхронизации. На данный момент я смог выполнить синхронизацию в проблемах с парой таблиц как при синхронизации вверх, так и при синхронизации вниз. Но у меня проблема в том, что одна из таблиц во время синхронизации сбрасывает ожидание (Newtonsoft.Json.JsonReaderException: неожиданный символ, обнаруженный при анализе значения: <. Path '', строка 0, позиция 0.). </p>
Может быть, это какой-то особенный символ, что это содержание в моих данных? или какая-то проблема с настройкой? В этой таблице 2600 записей, которые я пытаюсь загрузить, может ли это быть на сумму?
public async Task SyncAllAsync(bool SyncForce = false)
{
ReadOnlyCollection<MobileServiceTableOperationError> syncErrors = null;
long PendingChanges = CurrentClient.SyncContext.PendingOperations;
try
{
await CurrentClient.SyncContext.PushAsync();
await AnalityTable.PullAsync("SyncAnalityAsync", AnalityTable.CreateQuery());
await DiseasesTable.PullAsync("SyncDiseasesAsync", DiseasesTable.CreateQuery());
await MainViewModel.Instance.PatientsViewModel.LoadConditionInitialsAsync(false);
}
catch (MobileServicePushFailedException exc)
{
if (exc.PushResult != null)
{
syncErrors = exc.PushResult.Errors;
}
}
// 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 (MobileServiceTableOperationError 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();
}
string message = "Error executing sync operation. Item: " + error.TableName + " (" + error.Item["id"] + "). Operation discarded.";
Debug.WriteLine(message);
}
}
}