public async Task <ContentResult> GetHtml(int id) { var partMessage = new GetEmailTemplatePartsQuery { EmailTemplateId = id }; var emailTemplatePartDtos = await _queryExecutor.ExecuteAsync <GetEmailTemplatePartsQuery, EmailTemplatePartDto>(partMessage); var sb = new StringBuilder(); emailTemplatePartDtos.Each(part => { switch (part.PartType) { case PartType.Html: sb.Append(part.Html); break; case PartType.Variable: sb.Append(part.VariableValue); break; default: throw new EmailMakerException("Unknown part type:" + part.PartType); } }); return(Content(sb.ToString(), "text/html")); }
private async Task <EmailTemplateDto> _GetEmailTemplate(int id) { var templateMessage = new GetEmailTemplateQuery { EmailTemplateId = id }; var templatePartMessage = new GetEmailTemplatePartsQuery { EmailTemplateId = id }; var emailTemplateDtos = await _queryExecutor.ExecuteAsync <GetEmailTemplateQuery, EmailTemplateDto>(templateMessage); var emailTemplatePartDtos = await _queryExecutor.ExecuteAsync <GetEmailTemplatePartsQuery, EmailTemplatePartDto>(templatePartMessage); var emailTemplateDto = emailTemplateDtos.Single(); emailTemplateDto.Parts = emailTemplatePartDtos; return(emailTemplateDto); }