public Task <IOperationResult> ExecuteDeleteQuery(IndexQueryServerSide query, QueryOperationOptions options, DocumentsOperationContext context, Action <DeterminateProgress> onProgress, OperationCancelToken token) { return(ExecuteOperation(query, options, context, onProgress, (key, retrieveDetails) => { var command = new DeleteDocumentCommand(key, null, _database); return new BulkOperationCommand <DeleteDocumentCommand>(command, retrieveDetails, x => new BulkOperationResult.DeleteDetails { Id = key, Etag = x.DeleteResult?.Etag }); }, token)); }
public async Task Delete() { var id = GetQueryStringValueAndAssertIfSingleAndNotEmpty("id"); using (ContextPool.AllocateOperationContext(out DocumentsOperationContext context)) { var changeVector = context.GetLazyString(GetStringFromHeaders("If-Match")); var cmd = new DeleteDocumentCommand(id, changeVector, Database); await Database.TxMerger.Enqueue(cmd); } NoContentStatus(); }