public EmailMessage CreateHtmlEmail(string htmlTemplate, dynamic model) { var hash = DotLiquidHashExtensions.FromDynamic(model); var htmlBody = PrepareBodyFromTemplate(htmlTemplate, hash); dynamic wrapped = new SafeHash((Hash)hash); var email = new EmailMessage { From = wrapped.From, To = wrapped.To, Subject = wrapped.Subject, HtmlBody = htmlBody }; return(email); }
public EmailMessage CreateTextEmail(string textTemplate, dynamic model) { var hash = DotLiquidHashExtensions.FromDynamic(model); var textBody = PrepareBodyFromTemplate(textTemplate, hash); dynamic wrapped = new SafeHash((Hash)hash); if (!(wrapped.To is List <string>)) { wrapped.To = new List <string>(new[] { wrapped.To as string }); } var email = new EmailMessage { From = wrapped.From, To = wrapped.To, Subject = wrapped.Subject, TextBody = textBody }; return(email); }
public static string Render(this Template template, dynamic source) { var hash = DotLiquidHashExtensions.FromDynamic(source); return(template.Render(hash)); }