Я использую мобильные службы Azure для синхронизации автономных данных в приложении wpf mvvm.
Когда приложение подключено к сети, CRUD работает нормально, но при переходе в автономный режим и добавлении новой записи и ее удалении выдается следующее сообщение об ошибке:
Message = "Элемент находится в несогласованном состоянии в локальном хранилище. Пожалуйста, завершите ожидающую синхронизацию, вызвав PushAsync () перед удалением элемента."
Я также пытался очистить запись, но она вернет
Невозможно очистить таблицу, так как в ней находятся ожидающие операции.
Стирание:
try
{
await _client.GetSyncTable<TEntity>().DeleteAsync(Model);
await _client.SyncAsync();
}
catch (InvalidOperationException invex)
{
var query = _client.GetSyncTable<TEntity>().CreateQuery().Where(el => el.Id == Model.Id);
await _client.GetSyncTable<TEntity>().PurgeAsync($"purgeEtBla", query,true,CancellationToken.None);
await _client.SyncAsync();
}
Добавление:
var entity = _mapper.Map<TEntity>(EntityViewModel);
await _client.GetSyncTable<TEntity>().InsertAsync(entity);
_list.AddEntity(entity);
window?.Close();
await _client.SyncAsync();