为什么.Dump(#)导致我的结果加倍?

时间:2011-10-03 15:22:13

标签: linqpad

当我使用LinqPad运行OData查询时,我有时需要超过标准3级嵌套/扩展。

我在网上发现,您可以致电Dump(int nestingLevel)以获得更多级别的嵌套。

但是当我这样做时,我得到两个结果集。 (一个是我的扩展嵌套,一个是没有.Dump调用。)

为什么?有没有办法可以关掉它?

作为示例连接到http://data.stackexchange.com/stackoverflow/atom并运行此查询:

Posts.Take(1).Select(x=>new{x.Title}).Dump(1)

您将获得两个相同的结果集。像这样:

LinqPad Double

1 个答案:

答案 0 :(得分:6)

运行C# Expression查询时,会自动转储查询结果。

LINQPad编译代码

LINQPad.Dump(
    //Your code here
);

您的代码也会调用Dump(),因此您在返回外部生成的Dump()调用之前会转储该对象。
Dump()返回其参数以允许链接)

您只需要在Dump()(或更高)查询中C# Statements,或者如果您想转储其他内容。