Table of Contents

Class EmailSender

Namespace
MailForge
Assembly
MailForge.dll

The default IEmailSender implementation. It renders typed emails, applies automatic plain-text generation, validates the message, and runs it through the configured middleware pipeline and provider.

public sealed class EmailSender : IEmailSender
Inheritance
EmailSender
Implements
Inherited Members

Constructors

EmailSender(IEmailProvider, IEnumerable<IEmailMiddleware>, IEnumerable<IEmailValidator>, IEmailTemplateRenderer, IInlineTemplateRenderer, ITemplateRegistry, EmailAddress?, bool)

Creates an email sender from its dependencies.

public EmailSender(IEmailProvider provider, IEnumerable<IEmailMiddleware> middleware, IEnumerable<IEmailValidator> validators, IEmailTemplateRenderer templateRenderer, IInlineTemplateRenderer inlineRenderer, ITemplateRegistry templateRegistry, EmailAddress? defaultFrom = null, bool autoPlainText = true)

Parameters

provider IEmailProvider
middleware IEnumerable<IEmailMiddleware>
validators IEnumerable<IEmailValidator>
templateRenderer IEmailTemplateRenderer
inlineRenderer IInlineTemplateRenderer
templateRegistry ITemplateRegistry
defaultFrom EmailAddress
autoPlainText bool

Methods

SendAsync(EmailMessage, CancellationToken)

Sends a message defined inline.

public Task<EmailDeliveryResult> SendAsync(EmailMessage email, CancellationToken cancellationToken = default)

Parameters

email EmailMessage
cancellationToken CancellationToken

Returns

Task<EmailDeliveryResult>

SendAsync<TModel>(Email<TModel>, CancellationToken)

Sends a strongly typed email.

public Task<EmailDeliveryResult> SendAsync<TModel>(Email<TModel> email, CancellationToken cancellationToken = default)

Parameters

email Email<TModel>
cancellationToken CancellationToken

Returns

Task<EmailDeliveryResult>

Type Parameters

TModel