public void Push(QueueMessageSendRequest messageSendRequest)
        {
            var message = messageSendRequest.Message;
            using (var smtpMessage = new MailMessage(messageSendRequest.OwnerAddress, messageSendRequest.RecipientAddress))
            {
                var hasHtmlBody = !string.IsNullOrWhiteSpace(message.MessageBodyRich);
                foreach (var replyToRecipient in messageSendRequest.ReplyToRecipients)
                {
                    smtpMessage.ReplyToList.Add(new MailAddress(replyToRecipient.Address, replyToRecipient.DisplayName));
                }


                smtpMessage.Subject = message.MessageTitle;
                smtpMessage.IsBodyHtml = hasHtmlBody;

                smtpMessage.AddView(message.MessageBodyPlain, "text/plain");
                smtpMessage.AddView(message.MessageBodyRich, "text/html");
                smtpMessage.AddAttachment(message.AttachmentFilePath);


                using (var client = new SmtpClient { EnableSsl = messageSendRequest.IsSecure })
                {
                    client.Send(smtpMessage);
                }
            }
        }