Interface IEmailTemplateService
- Namespace
- MailStencil
- Assembly
- MailStencil.Core.dll
The runtime entry point for loading and rendering a template.
public interface IEmailTemplateService
Remarks
The default singleton coordinates exact reader lookups, culture-parent fallback, positive source caching and rendering. Reader and renderer dependencies must be safe for concurrent use and suitable for a singleton lifetime. No rendered output or model is cached.
Methods
RenderAsync<TModel>(TemplateRequest, TModel, CancellationToken)
Renders a requested variant/version. Null culture uses the default variant. Formatting always uses the originally requested culture, or invariant culture for null, even when a parent/default variant is found. Name and version are preserved during fallback.
Task<RenderedEmailTemplate> RenderAsync<TModel>(TemplateRequest request, TModel model, CancellationToken cancellationToken = default) where TModel : notnull
Parameters
requestTemplateRequestmodelTModelcancellationTokenCancellationToken
Returns
Type Parameters
TModel
Exceptions
- TemplateNotFoundException
All exact fallback variants are absent.
RenderAsync<TModel>(string, TModel, CancellationToken)
Renders a named active template using configured culture defaults.
Task<RenderedEmailTemplate> RenderAsync<TModel>(string name, TModel model, CancellationToken cancellationToken = default) where TModel : notnull
Parameters
namestringmodelTModelcancellationTokenCancellationToken
Returns
Type Parameters
TModel
Exceptions
- TemplateNotFoundException
All exact fallback variants are absent.