LambdaExpression CompileToMethod

我有几行代码

public void CreateMethod(Expression<Action> method) { var innerMethod = Builder.DefineMethod("SomeName",MethodAttributes.Private); method.CompileToMethod(innerMethod); //more code } 

但是第二行失败了。 我尝试过不同版本的DefineMethod运气不佳。 有什么建议?

不幸的是, CompileToMethod需要一个静态方法作为其参数(参见此处 )。 因此,您需要将MethodAttributes.Static添加到innerMethod的定义中。