public async Task DeleteMessage(string conversationId, string messageId) { using (_logger.BeginScope("{ConversationId}", conversationId)) { var stopWatch = Stopwatch.StartNew(); await _messageStore.DeleteMessage(conversationId, messageId); _telemetryClient.TrackMetric("MessageStore.DeleteMessage.Time", stopWatch.ElapsedMilliseconds); _telemetryClient.TrackEvent("MessageDeleted"); } }
private async Task <Unit> DeleteMessageInternalAsync(Guid messsageId, CancellationToken cancellationToken) { try { await messageStore.DeleteMessage(messsageId, cancellationToken); await hubContext.Clients.All.ReceiveDeletedMessage(messsageId); return(Unit.Value); } catch (Exception) { throw; } }
public IActionResult Delete(Guid?id) { if (id.HasValue) { ISmtp4devMessage message = _messageStore.Messages.FirstOrDefault(m => m.Id == id); if (message != null) { _messageStore.DeleteMessage(message); } } else { _messageStore.DeleteAllMessages(); } return(new NoContentResult()); }