public static async Task SendNowTo <TMailable>( this IMailer mailer, IReceivesEmail to, TMailable mailable) where TMailable : Mailable { await mailer.SendNowAsync(mailable, email => { email.To(to.Email, to.Name); }); }
public async Task <Result> Handle(Command request, CancellationToken ct) { var user = await _userManager.FindByEmailAsync(request.Email); // dont reveal that user exist if (user == null) { return(new Result()); } var code = await _userManager.GeneratePasswordResetTokenAsync(user); request.Code = WebEncoders.Base64UrlEncode(Encoding.UTF8.GetBytes(code)); await _mailer.SendNowAsync(new PasswordForgotMail(user, request)); return(new Result()); }