public EmailSendAttempt Send(Email email)
        {
            email.Sender = email.Sender ?? Configuration.EmailSender;
            var attempt = new EmailSendAttempt
            {
                Date    = DateTime.UtcNow,
                Server  = Smtp.Host,
                Success = true,
            };

            try
            {
                Smtp.Send(email.ToMailMessage());
                email.Sent = DateTime.UtcNow;
            }
            catch (Exception ex)
            {
                attempt.Success = false;
                attempt.Error   = ex.Message;
            }

            email.Tenant = Tenant.Document.Id;
            email.AddAttempt(attempt);
            Emails.Save(email);
            return(attempt);
        }
        public EmailSendAttempt Send(Email email)
        {
            email.Sender = email.Sender ?? Configuration.EmailSender;
            var attempt = new EmailSendAttempt
                  {
                      Date = DateTime.UtcNow,
                      Server = Smtp.Host,
                      Success = true,
                  };
            try
            {
                Smtp.Send(email.ToMailMessage());
                email.Sent = DateTime.UtcNow;
            }
            catch (Exception ex)
            {
                attempt.Success = false;
                attempt.Error = ex.Message;
            }

            email.Tenant = Tenant.Document.Id;
            email.AddAttempt(attempt);
            Emails.Save(email);
            return attempt;
        }