我如何'取消引用'关闭?

时间:2013-03-29 21:36:34

标签: c# lambda expression-trees

所以我正在解析一个表达式树,但我遇到了一个异常现象。鉴于表达式:

Int32 five = 5;

var query = Z<MyPersonTable>.QueryVia<IPersonQuery>()
    .Where(person => five == 5);

当我解析five字段时,而不是获得实际数字,我得到:

Program.Hosting.TestService.P+<>;c__DisplayClass0

我认识到它必须是一个闭包,但我如何从中获得实际价值呢?

这是我的解析器:

    private static XElement Parse(ConstantExpression constant)
    {
        return new XElement("CONSTANT",
            new XAttribute("TYPE", constant.Type),
                constant.Value);
    }

通常适用于其他值,但不是在我传入闭包时。

0 个答案:

没有答案