没有参数的Lambda表达式

时间:2013-08-22 16:03:25

标签: c# delegates action anonymous-delegates

假设我有这样的方法(我的实际方法做得更多 - 我在这里简化了代码):

protected void Run(Action a)
{
    a();
}

然后我可以用这样的代码调用它:

Run(myAction);

但是我如何创建一个内联方法来将参数传递给我的动作。以下代码生成无效参数错误:

Run(myAction(arg1, arg2));

我习惯于使用像arg => myAction(arg)这样的lambda表达式传递参数的动作来执行此操作,但是这里没有传递参数。那么正确的语法是什么?

1 个答案:

答案 0 :(得分:4)

 Run(()=>myAction(arg1, arg2));