Esempio n. 1
0
        public override Task SendAsync(IdentityMessage message)
        {
            var item = FormatProvider.GetFormattedModel();

            try
            {
                using (var client = new SmtpClient())
                {
                    client.Port                  = _setting.Port;
                    client.Host                  = _setting.Server;
                    client.EnableSsl             = true;
                    client.Timeout               = 10000;
                    client.DeliveryMethod        = SmtpDeliveryMethod.Network;
                    client.UseDefaultCredentials = false;
                    client.Credentials           = new NetworkCredential(_setting.User, _setting.Password);

                    var mailMessage = new MailMessage(_setting.Sender, message.Destination, message.Subject, message.Body)
                    {
                        IsBodyHtml   = item.IsHtml,
                        BodyEncoding = Encoding.UTF8,
                        DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure
                    };

                    client.Send(mailMessage);
                }
                return(Task.FromResult(true));
            }
            catch (Exception ex)
            {
                return(Task.FromResult(false));
            }
        }