예제 #1
0
        public string Build(MailData data)
        {
            var template = new StringBuilder(templateProvider.GetTemplate(data.TemplateName));

            template.Replace("{{FirstName}}", data.FirstName);
            template.Replace("{{Id}}", data.Id);
            return(template.ToString());
        }
예제 #2
0
파일: Mailer.cs 프로젝트: rkranenb/bbqmail
        protected override void SendInternal(MailData data)
        {
            var message = composer.Compose(data);

            foreach (var address in message.To)
            {
                logger.Warn("No-send switch prevented sending message to {0}", address);
            }
        }
예제 #3
0
        public MailMessage Compose(MailData data)
        {
            var message = new MailMessage {
                Body       = bodyBuilder.Build(data),
                IsBodyHtml = true,
                Subject    = "Teamborrel / BBQ"
            };

            message.To.Add(addressBuilder.Build(data.Address));
            return(message);
        }
예제 #4
0
파일: Mailer.cs 프로젝트: rkranenb/bbqmail
        protected override void SendInternal(MailData data)
        {
            var message = composer.Compose(data);

            try {
                client.Send(message);
            } catch (Exception e) {
                var guid = dumper.Dump(message);
                logger.Error("Failed to send message to {1}. Created dump: {0}", guid, data.FullName());
                logger.Error($"Message: {e.Message}");
            }

            foreach (var address in message.To)
            {
                logger.Info("Send message to {0}", address);
            }
        }
예제 #5
0
파일: Mailer.cs 프로젝트: rkranenb/bbqmail
 public void Send(MailData data)
 {
     SendInternal(data);
 }
예제 #6
0
파일: Mailer.cs 프로젝트: rkranenb/bbqmail
 protected abstract void SendInternal(MailData data);