diff --git a/zero.Core/Mails/MailProvider.cs b/zero.Core/Mails/MailProvider.cs index 74059df1..e470d83c 100644 --- a/zero.Core/Mails/MailProvider.cs +++ b/zero.Core/Mails/MailProvider.cs @@ -94,8 +94,8 @@ namespace zero.Core.Mails } - - protected virtual async Task Render(Mail message) + /// + public virtual async Task Render(Mail message) { message.Subject = TokenReplacement.Apply(message.Subject, message.Placeholders); message.Body = TokenReplacement.Apply(message.Body, message.Placeholders); @@ -103,7 +103,7 @@ namespace zero.Core.Mails if (!message.HasView) { message.IsRendered = true; - return; + return message.Body; } string viewPath = message.ViewPath; @@ -116,6 +116,7 @@ namespace zero.Core.Mails message.Body = await Renderer.ViewAsync(viewPath, message); message.IsBodyHtml = true; message.IsRendered = true; + return message.Body; } @@ -166,6 +167,12 @@ namespace zero.Core.Mails /// Task> Create(string mailTemplateKey, T model, CancellationToken token = default) where T : class; + /// + /// Renders the message body. + /// This is automatically called when sending messages. + /// + Task Render(Mail message); + /// /// Sends a message with the default dispatcher ///