public static void SendEmail(string subject, string message, string recipient, string template) { var email = new PostmarkMessage { From = "*****@*****.**", To = recipient }; // email.Bcc = EmailRecipientSettings.Default.To; email.Subject = subject; // string filename = Path.Combine(HttpRuntime.AppDomainAppPath, "EmailTemplates/" + template); var filename = Path.Combine( Directory.GetCurrentDirectory(), "wwwroot/templates", template); string content = File.ReadAllText(filename); content = content.Replace("#NotificationContent", message); content = content.Replace("#date", DateTime.Today.ToString("dd-MMM-yyyy")); content = content.Replace("#YEAR", DateTime.Now.Year.ToString()); email.HtmlBody = content; email.TextBody = content; var client = new PostmarkClient(EmailSettings.ServerToken); IAsyncResult result = client.BeginSendMessage(email); if (result.AsyncWaitHandle.WaitOne()) { var response = client.EndSendMessage(result); //return true; } }
public void Can_send_message_with_token_and_signature_async() { var postmark = new PostmarkClient(_serverToken); var email = new PostmarkMessage { To = _to, From = _from, // This must be a verified sender signature Subject = Subject, TextBody = TextBody }; var result = postmark.BeginSendMessage(email); var response = postmark.EndSendMessage(result); Assert.IsNotNull(response); Assert.IsNotNullOrEmpty(response.Message); Assert.IsTrue(response.Status == PostmarkStatus.Success); Console.WriteLine("Postmark -> {0}", response.Message); }