public async Task <DirectEmailTemplate> GetTemplateAsync(int templateId, int languageId) { var template = await _directEmailTemplateRepository .GetWithTextByIdAsync(templateId, languageId); if (template?.Id == null) { throw new GraException($"Unable to find template id {templateId}"); } return(template); }
private async Task <DirectEmailTemplate> GetDirectEmailTemplateAsync( string templateSystemId, int templateId, int languageId) { var useTemplateId = string.IsNullOrEmpty(templateSystemId); var cacheKey = useTemplateId ? GetCacheKey(CacheKey.DirectEmailTemplateId, templateId, languageId) : GetCacheKey(CacheKey.DirectEmailTemplateSystemId, templateSystemId, languageId); var cacheTemplate = await _cache.GetObjectFromCacheAsync <DirectEmailTemplate>(cacheKey); if (cacheTemplate != null) { return(cacheTemplate); } var directEmailTemplate = useTemplateId ? await _directEmailTemplateRepository.GetWithTextByIdAsync(templateId, languageId) : await _directEmailTemplateRepository .GetWithTextBySystemId(templateSystemId, languageId); if (directEmailTemplate != null) { await _cache.SaveToCacheAsync(cacheKey, directEmailTemplate, CacheEmailTemplatesHours); } return(directEmailTemplate); }