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)); } }