public static void CheckResultErrors(DeleteResult[] deleteResults) { string errMessages = string.Empty; foreach (DeleteResult dr in deleteResults) { if (!dr.success) { foreach (Error err in dr.errors) errMessages += err.message + "\n"; } } if (errMessages != string.Empty) throw new Exception(errMessages); }
public new DeleteResult[] delete(string[] ids) { long start = DateTime.Now.Ticks; if (ids.Length > 1) SetAutoRequestCompressed(); else SetAutoRequestPlain(); SetAutoResponseCompressed(); try { if (ids.Length <= maxRowCount) return base.delete(ids); else { DeleteResult[] results = new DeleteResult[ids.Length]; for (int startPos = 0; startPos < ids.Length; startPos += maxRowCount) { string[] buffer = new string[Math.Min(maxRowCount, ids.Length - startPos)]; Array.Copy(ids, startPos, buffer, 0, buffer.Length); (base.delete(buffer)).CopyTo(results, startPos); } return results; } } finally { if (OnDeleteComplete != null) OnDeleteComplete(new TimeSpan(DateTime.Now.Ticks - start)); ResetCompressionModes(); } }