Ejemplo n.º 1
0
        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);
 }