예제 #1
0
        private async Task ChangePasswordAsync(Administrator administrator, PasswordFormat passwordFormat, string passwordSalt, string password)
        {
            administrator.LastChangePasswordDate = DateTime.Now;

            var cacheKeys = GetCacheKeys(administrator);

            await _repository.UpdateAsync(Q
                                          .Set(nameof(Administrator.Password), password)
                                          .Set(nameof(Administrator.PasswordFormat), passwordFormat.GetValue())
                                          .Set(nameof(Administrator.PasswordSalt), passwordSalt)
                                          .Set(nameof(Administrator.LastChangePasswordDate), administrator.LastChangePasswordDate)
                                          .Where(nameof(Administrator.Id), administrator.Id)
                                          .CachingRemove(cacheKeys.ToArray())
                                          );
        }
예제 #2
0
파일: UserRepository.cs 프로젝트: lyfb/cms
        private async Task ChangePasswordAsync(int userId, PasswordFormat passwordFormat, string passwordSalt, string password)
        {
            var user = await GetByUserIdAsync(userId);

            if (user == null)
            {
                return;
            }

            user.LastResetPasswordDate = DateTime.Now;

            await _repository.UpdateAsync(Q
                                          .Set(nameof(User.Password), password)
                                          .Set(nameof(User.PasswordFormat), passwordFormat.GetValue())
                                          .Set(nameof(User.PasswordSalt), passwordSalt)
                                          .Set(nameof(User.LastResetPasswordDate), user.LastResetPasswordDate)
                                          .Where(nameof(User.Id), user.Id)
                                          .CachingRemove(GetCacheKeysToRemove(user))
                                          );
        }