/// <summary> /// Gets the body for the message. /// </summary> /// <param name="builder">The builder.</param> /// <param name="message">The message.</param> /// <param name="settings">The settings.</param> /// <param name="logger">The logger.</param> /// <param name="token">The cancellation token.</param> /// <returns>System.Threading.Tasks.Task<MimeKit.BodyBuilder>.</returns> public static async Task <BodyBuilder> GetMkBody( this BodyBuilder builder, DeliveryItem message, MkSmtpMailerSettings settings, ILogger logger, CancellationToken token = default(CancellationToken)) { ContentBody cbody; if (message?.Body is TemplateBody body) { cbody = await body.GetContentBodyFromFileTemplatesAsync( message, settings.TemplateSettings.TemplatePath, settings.TemplateSettings.HtmlTemplateFileExtensions, settings.TemplateSettings.TextTemplateFileExtension, logger, token); } else { cbody = message?.Body as ContentBody; } return(builder.GetMimeEntityForContentBody(message, cbody)); }
/// <summary> /// Adds the MailKit SMTP mailer system to dependency injection. /// </summary> /// <param name="services">The services.</param> /// <param name="mailerSettings">The settings.</param> /// <returns>IServiceCollection.</returns> /// <remarks>Will setup the mailer as the default</remarks> public static IServiceCollection AddMkSmtpMailer ( this IServiceCollection services, MkSmtpMailerSettings mailerSettings ) { return(services.AddMailer <MkSmtpMailer, MkSmtpMailerSettings>(mailerSettings)); }