【发布时间】:2018-10-03 16:54:37
【问题描述】:
我需要一个函数来返回过滤后的具有不同用户名的不同用户列表。我想排除用户名相似但密码不同的用户。
输入
用户 1(“吉姆”,1111)
用户 2(“吉姆”,3333)
user3(“比尔”,2222)
用户 4(“迈克”,2222)
输出
user3(“比尔”,2222)
user4(“迈克”,2222)
private IEnumerable<User> GetCorrectUsers(IEnumerable<User> userList)
{
IEnumerable<User> filtered= userList.GroupBy(user => user.UserName)
.Select(g => g.???)
.Where(p => p.Password).Distinct().Count() > 1;
return filtered;
}
缺少一个步骤。
【问题讨论】:
-
不应该是
Count() = 1吗? -
@sagi 技术上
Count() == 1但我和你在一起...... ;) -
如果您要存储真实密码,请记住在实施此类代码时根据最佳实践对密码进行散列和加盐。
-
如果我们有 3 个用户,{Name = "Jim", Password = 1111}, {Name = "Jim", Password = 1111}, {Name = "Jim", Password = 2222} .我们应该排除所有这些还是选择具有“2222”密码的那个?