protected virtual async Task ReplaceEmailToUsernameOfInputIfNeeds(UserLoginInfo login) { if (!ValidationHandler.IsValidEmailAddress(login.UserNameOrEmailAddress)) { return; } var userByUsername = await _userManager.FindByNameAsync(login.UserNameOrEmailAddress); if (userByUsername != null) { return; } var userByEmail = await _userManager.FindByEmailAsync(login.UserNameOrEmailAddress); if (userByEmail == null) { return; } if (userByEmail.EmailConfirmed == false) { throw new UserFriendlyException("邮件未激活确认,无法使用邮件进行登录!"); } login.UserNameOrEmailAddress = userByEmail.UserName; }
protected virtual async Task ReplaceEmailToUsernameOfInputIfNeeds(ResourceOwnerPasswordValidationContext context) { if (!ValidationHandler.IsValidEmailAddress(context.UserName)) { return; } var userByUsername = await _userManager.FindByNameAsync(context.UserName); if (userByUsername != null) { return; } var userByEmail = await _userManager.FindByEmailAsync(context.UserName); if (userByEmail == null) { return; } context.UserName = userByEmail.UserName; }
protected virtual async Task ReplaceEmailToUsernameOfInputIfNeeds() { if (!ValidationHandler.IsValidEmailAddress(LoginInput.UserNameOrEmailAddress)) { return; } var userByUsername = await UserManager.FindByNameAsync(LoginInput.UserNameOrEmailAddress); if (userByUsername != null) { return; } var userByEmail = await UserManager.FindByEmailAsync(LoginInput.UserNameOrEmailAddress); if (userByEmail == null) { return; } LoginInput.UserNameOrEmailAddress = userByEmail.UserName; }