当id在数组中时,linq where子句

时间:2016-03-07 14:11:09

标签: c# linq

如果UserId在数组中,我有一个返回用户列表的方法。 UserIds数组传递给方法。

我不确定如何在数组中编写... where userid?

in ids[]以下的

显然不正确。

public List<User> GetUsers(int[] ids)
{
   return Users.Values.Where(u => u.UserID in ids[]).ToList();
}

任何想法如何纠正?

谢谢,

2 个答案:

答案 0 :(得分:18)

你可以尝试这样的事情:

public List<User> GetUsers(int[] ids)
{
    return Users.Values.Where(u => ids.Contains(u.UserID)).ToList();
}

答案 1 :(得分:3)

与Quentins交替使用此答案:

public List<User> GetUsers(int[] ids)
{
    return Users.Values.Where(u => ids.Any(x => x == u.UserID)).ToList();
}