示例#1
0
            public async Task <ConfirmInfoDto> Handle(ConfirmDto input, CancellationToken cancellationToken)
            {
                var resetPasswordToken = await _userManager.GenerateEmailConfirmationTokenAsync(input.User);

                var email        = input.User.Email;
                var userEmail    = input.User.Email;
                var emailSendDto = new EmailSendDto(email, GenerateMessageText(resetPasswordToken, email), userEmail);
                await _emailSenderService.Handle(emailSendDto, cancellationToken);

                return(new ConfirmInfoDto(userEmail, "Письмо успешно отправлено"));
            }
        public async Task <SimplyHandlerResult> Handle(ForgotPasswordDto input, CancellationToken cancellationToken)
        {
            var user = await _userManager.FindByEmailAsync(input.Email);

            var code = await _userManager.GeneratePasswordResetTokenAsync(user);

            var sendeeEmail    = (Email)input.Email;
            var subject        = user.UserName;
            var text           = $"Код для восстановления пароля {code}";
            var emailSenderDto = new EmailSendDto(sendeeEmail, text, subject);

            await _emailSenderService.Handle(emailSenderDto, cancellationToken);

            return(new SimplyHandlerResult(true));
        }