/// <summary> /// Send a new transactional message through Mandrill using a template /// </summary> /// <param name="message"> /// The message. /// </param> /// <param name="templateName"> /// </param> /// <param name="templateContents"> /// </param> /// <param name="send_at"> /// The send_at. /// </param> /// <returns> /// The <see cref="Task" />. /// </returns> public async Task<List<EmailResult>> SendMessageTemplate(SendMessageTemplateRequest request) { string path = "/messages/send-template.json"; List<EmailResult> resp = await Post<List<EmailResult>>(path, request); return resp; }
public ActionResult SendInvitation(InvitationModel model) { using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); SqlCommand command = new SqlCommand("insert into emailtofriends(name, email, message) values (@name, @email, @message)", connection); command.Parameters.AddWithValue("name", model.Name); command.Parameters.AddWithValue("email", model.Email); command.Parameters.AddWithValue("message", model.Message); try { command.ExecuteNonQuery(); } catch (SqlException ex) { // do what? } finally { connection.Close(); } //Send mandril message try { MandrillApi api = new MandrillApi(ProjectConfiguration.MandrillApiKey); var emailMessage = new EmailMessage() { To = new List<EmailAddress>() { new EmailAddress(model.Email, "Invited") }, FromEmail = ProjectConfiguration.FromEmail, FromName = ProjectConfiguration.FromName, Subject = string.Format(ProjectConfiguration.InvitationEmailSubject, model.Name), Merge = true, MergeLanguage = "mailchimp" }; emailMessage.AddGlobalVariable("invitername", model.Name); emailMessage.AddGlobalVariable("invitermessage", model.Message.Replace("\n", "<br />")); var request = new SendMessageTemplateRequest(emailMessage, "invitation", null); var result = api.SendMessageTemplate(request); } catch (Exception ex) { // do what? } return new EmptyResult(); } }