Lambda表达式与C中的语句混合#

Lambda表达式与C中的语句混合#,lambda,conditional,expression,operator-keyword,Lambda,Conditional,Expression,Operator Keyword,我有一部分代码,其中我必须使用一个函数和一个通过lambda语句获得的参数(为了简化,可以这样做): 但问题是,在条件运算符的第一个操作中,arrayItem带下划线,错误显示为“名称'arrayItem'在当前上下文中不存在”,即使它是在lambda的开头定义的 因此,我试图在lambda中添加一条语句,为外部定义的变量提供arrayItem的值,它带来了许多错误 有没有办法从lambda表达式引用此变量?我不明白为什么它没有在条件运算符中结转。试试这个: Array.Exists(mainA

我有一部分代码,其中我必须使用一个函数和一个通过lambda语句获得的参数(为了简化,可以这样做):

但问题是,在条件运算符的第一个操作中,arrayItem带下划线,错误显示为“名称'arrayItem'在当前上下文中不存在”,即使它是在lambda的开头定义的

因此,我试图在lambda中添加一条语句,为外部定义的变量提供arrayItem的值,它带来了许多错误

有没有办法从lambda表达式引用此变量?我不明白为什么它没有在条件运算符中结转。

试试这个:

Array.Exists(mainArray, (arrayItem) =>
    {
        return variable == secondArray[Array.IndexOf(mainArray, arrayItem)];
    }); 
Array.Exists(mainArray, (arrayItem) =>
    {
        return variable == secondArray[Array.IndexOf(mainArray, arrayItem)];
    });