protected void DeleteByQuery(CamlQuery query, LibraryDeleteOptions options = LibraryDeleteOptions.None) { var items = List.GetItems(query); List.Context.Load(items, coll => coll.Include(item => item.Id)); List.Context.ExecuteQuery(); var count = 0; foreach (var item in items) { item.DeleteObject(); if (++count > MAX_BATCH_SIZE && (options & LibraryDeleteOptions.DoNotExecuteQuery) != LibraryDeleteOptions.DoNotExecuteQuery) { List.Context.ExecuteQuery(); count = 0; } } if (count > 0 && (options & LibraryDeleteOptions.DoNotExecuteQuery) != LibraryDeleteOptions.DoNotExecuteQuery) { List.Context.ExecuteQuery(); } }
public void DeleteById(int id, LibraryDeleteOptions options = LibraryDeleteOptions.None) { var item = List.GetItemById(id); item.DeleteObject(); if ((options & LibraryDeleteOptions.DoNotExecuteQuery) != LibraryDeleteOptions.DoNotExecuteQuery) { List.Context.ExecuteQuery(); } }
public void DeleteByQuery(string camlQuery, LibraryDeleteOptions options = LibraryDeleteOptions.None) { DeleteByQuery(new CamlQuery { ViewXml = camlQuery }, options); }