C# Lambda语法:函数在一系列参数上具有特定值的元素

C# Lambda语法:函数在一系列参数上具有特定值的元素,c#,list,lambda,C#,List,Lambda,我有一个自定义类型MyType,带有一个返回true或false的函数MyBoolFunction(string) 我有一个很大的MyType对象列表MyTypeList 我有一个字符串对象列表StringList 我想获得MyTypeList的子集,其中MyTypeList.MyBoolFunction(arg)对于arg的至少一个值为true,因为arg范围超过StringList 我想我应该可以用C#lambda表达式来实现这一点 我想象这样的事情(伪代码) 这可能吗?我如何才能做到这一点

我有一个自定义类型
MyType
,带有一个返回true或false的函数
MyBoolFunction(string)

我有一个很大的
MyType
对象列表
MyTypeList

我有一个字符串对象列表
StringList

我想获得
MyTypeList
的子集,其中
MyTypeList.MyBoolFunction(arg)
对于
arg
的至少一个值为true,因为
arg
范围超过
StringList

我想我应该可以用C#lambda表达式来实现这一点

我想象这样的事情(伪代码)

这可能吗?我如何才能做到这一点?

尝试使用:


为清楚起见,
s
StringList
中的一个条目,
x
MyTypeList
中的一个条目,但不知道您的实际类型,我想说:

MyTypeList.Where(x => StringList.Any(arg => x.MyBoolFunction(arg));

哇,看起来我们很多人都在同时输入同一个东西!啊!我想你还需要一个括号。
var query = MyTypeList.Where(x => StringList.Any(arg => x.MyBoolFunction(arg)));
MyTypeList.Where(x => StringList.Any(s => x.MyBoolFunction(s)));
MyTypeList.Where(x => StringList.Any(arg => x.MyBoolFunction(arg));