Example #1
0
        protected void DeleteByQuery(CamlQuery query, ListDeleteOptions options = ListDeleteOptions.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 & ListDeleteOptions.DoNotExecuteQuery) != ListDeleteOptions.DoNotExecuteQuery)
                {
                    List.Context.ExecuteQuery();
                    count = 0;
                }
            }

            if (count > 0 && (options & ListDeleteOptions.DoNotExecuteQuery) != ListDeleteOptions.DoNotExecuteQuery)
            {
                List.Context.ExecuteQuery();
            }
        }
Example #2
0
        public void DeleteById(int id, ListDeleteOptions options = ListDeleteOptions.None)
        {
            var item = List.GetItemById(id);

            item.DeleteObject();

            if ((options & ListDeleteOptions.DoNotExecuteQuery) != ListDeleteOptions.DoNotExecuteQuery)
            {
                List.Context.ExecuteQuery();
            }
        }
Example #3
0
 public void DeleteByQuery(string camlQuery, ListDeleteOptions options = ListDeleteOptions.None)
 {
     DeleteByQuery(new CamlQuery {
         ViewXml = camlQuery
     }, options);
 }