如何将lambda表达式直接转换为对象?

时间:2010-03-11 03:26:00

标签: c# object lambda

我必须通过这样做:

Action action = () => { ..// };
object o = action;

任何方式:

object o = () =>{};  //this doesn't compile

3 个答案:

答案 0 :(得分:9)

Weeeell,代表是对象,但lambdas不是。

这个object o = (Action)(() => {});会编译,但我不知道它看起来是否更好。

答案 1 :(得分:8)

怎么样:

object o = (Action) (() => { ... });

虽然我真的不知道为什么你想把它作为一个对象存储起来......

答案 2 :(得分:5)

另一种选择,并非完全不同:

object o = new Action(() => { });