我有一个List<Group>
,其中Group
是:
class Group
{
string Id,
string Name
}
我有一个
List<string>
,其中包含ID的列表我想将所有
Group
对象从List<Group>
中拉出的List<string>
中有一个ID类似于
var groups = groupList.Where(x => x.Id == "id")
的东西,但一次有多个ID。
最佳答案
您可以使用类似:
List<string> ids = GetTheIDs();
var groups = groupList.Where(x => ids.Contains(x.Id));
话虽如此,这对于大量的ID来说效率不高。如果您有许多ID值,则可能需要将它们放在
HashSet<T>
而不是List<T>
中,因为在这种情况下,Contains()
调用将是O(1)而不是O(n)。
关于c# - 一次将对象从List <T>中拉出多个ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15125970/