У меня есть мобильное приложение Azure Easy Table Xamarin, которое представляет собой кучу списков, напоминаний для себя. Он отлично работает, чтобы добавить, обновить и удалить. Я хочу иметь возможность получить список обратимо удаленных элементов, чтобы я мог восстановить некоторые из них, чтобы добавить их обратно в список, не вводя их повторно. Я не могу понять, как это сделать. Я вижу в поиске Google атрибут IncludeDeleted, но, похоже, он не применяется к таблице IMobileServiceSyncTable, которую я использую. Вот код, но он извлекает нулевые записи. Если я запускаю его в LinqPad 5, я получаю все мягко удаленные записи.
public async Task<IEnumerable<ListData>> GetDeletedItemsAsync()
{
await InitializeClient();
await SyncItems();
try
{
IEnumerable<ListData> items = await listdata
.Where(listdata => listdata.Deleted == true )
.ToEnumerableAsync();
return new ObservableCollection<ListData>(items);
}
catch (MobileServiceInvalidOperationException msioe)
{
Debug.WriteLine(@"Invalid sync operation: {0}", msioe.Message);
}
catch (Exception e)
{
Debug.WriteLine(@"Sync error: {0}", e.Message);
}
return null;
}
Вот класс:
public class ListData
{
public string id { get; set; }
[JsonProperty(PropertyName = "listname")]
public string ListName { get; set; }
[JsonProperty(PropertyName = "itemdata")]
public string ItemData { get; set; }
[JsonProperty(PropertyName = "itemdetail")]
public string ItemDetail { get; set; }
[JsonProperty(PropertyName = "deleted")]
public Boolean Deleted { get; set; }
// *** Enable Optimistic Concurrency *** //
[Version]
public string Version { get; set; }
}
Что мне не хватает? Спасибо.