我正在使用LINQ to Entities 4.1。
使用LINQPAD,但我注意到LINQ查询可能需要很长时间,而且我认为这也是由于所有链接表都被查询。我只需要在我的asp.net应用程序中发生的顶级结果集,这很快。我在其他LINQ中使用Devart的Entity Developer等工具注意到了这一点。显然,当您想要浏览数据时,这非常有用,但是当您由于检索速度慢而不能这样做时,这非常有用。
关于如何阻止在工具中发生嵌套检索的建议。也许它是我的LINQ查询的补充?
答案 0 :(得分:4)
您可以使用Dump(this object o, int depth)
重载来控制查询的深度。
例如:
myQuery.Dump(1);
只会从返回的对象的属性中选择内容,而不会选择这些属性的属性。
如果您运行以下示例,您可以看到它的实际效果:
void Main()
{
var a = new A
{
B = new B
{
Foo = "Deep",
},
};
a.Dump(); //Shows properties of all properties.
a.Dump(1); //Does not show properties of B.
}
class A
{
public B B { get; set; }
}
class B
{
public String Foo { get; set; }
}