我注意到某些命令会导致 LINQtoSQL 连接到数据库并下载属于查询一部分的记录,例如 .ToArray()。
命令 .Cast() 是否会导致执行查询(以及将来如何告诉这些事情?)。例如...
IRevision<T> current = context.GetTable(typeof(T))
.Cast<IRevision<T>>()
.SingleOrDefault(o => o.ID == recordId);
我知道 .GetTable 有一个命令允许您指定泛型类型,但由于奇怪且无法解释的原因,它不能在这种情况下使用。