private async Task <int> SaveToDatabase(IMessage message) { try { int result = 0; _logger.LogInformation($"Saving to Database. Sending Application: {message.SendingApplication} Payload: {message.Payload}"); var emailContactAlerts = new EmailContactAlerts(); emailContactAlerts.EmailContactAlertsId = 1; var failedMessage = new FailedMessages(); failedMessage.CreatedTimeStamp = DateTime.Now; failedMessage.EmailContactAlerts = emailContactAlerts; failedMessage.LastRetryTimeStamp = DateTime.Now; failedMessage.Message = message.Payload; failedMessage.QueueName = message.Queue; failedMessage.RetryTicker = 0; failedMessage.SecondsDelayForRetry = 10; failedMessage.SendingApplication = message.SendingApplication; using (var db = new MessageContext()) { db.FailedMessages.Add(failedMessage); await db.SaveChangesAsync(); } return(result); } catch (Exception ex) { _logger.LogError($"Sending Application: {message.SendingApplication} Payload: {message.Payload} Exception: {ex.Message}"); return(-1); } }
public ListenerExecutionFailedException(string message, Exception cause, params IMessage[] failedMessages) : base(message, cause) { FailedMessages.AddRange(failedMessages); }