gpt4 book ai didi

c# - 列表上未定义数量的或操作

转载 作者:太空宇宙 更新时间:2023-11-03 21:09:33 25 4
gpt4 key购买 nike

我有一个包含 n 个条目的列表。 List<MyClass> result

我还有另一个带有 n-Filter 选项的列表 List<string> filters

我想要的是返回其他List过滤后的结果List。

对于 AND 操作,它很简单:

foreach (var filter in filters) 
{
results = results.Where(x => x.Result == filter);
}

但是如何为 OR 操作编写代码?

最佳答案

在这种情况下,您可以将 WhereAny 结合使用:

results = results.Where(x => filters.Any(f => f == x.Result));

https://msdn.microsoft.com/library/bb534972(v=vs.110).aspx

其他方式:

//Contains, see DAXaholic's post
results = results.Where(x => filters.Contains(x.Result));

https://msdn.microsoft.com/library/bhkz42b3(v=vs.110).aspx

//List Extension method 'Exists'
results = results.Where(x => filters.Exists(f => f == x.Result));

https://msdn.microsoft.com/library/bfed8bca(v=vs.110).aspx

关于c# - 列表上未定义数量的或操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38629796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com