我对ORM的经验仅限于NHibernate。
但是,我刚刚开始研究使用EF6的新项目。
在Linq to NHibernate中,我们能够在一次往返中推迟查询执行和水合多个查询,如下所示:
// apples will be an IEnumerable<Apple> and won't be hydrated until it is enumerated
// or another query is hydrated
var apples = session.Query<Apple>().Where(a => a.Type = "red").ToFuture();
// oranges will be an IEnumerable<Orange> and won't be hydrated until it is enumerated
// or another query is hydrated
var oranges = session.Query<Orange>().Where(a => a.Type = "small").ToFuture();
// this will hydrate all three queries
var grapes = session.Query<Grape>().Where(a => a.Type = "red").ToFuture().ToList();
有人发布了类似的Subtract Milliseconds from a Date,但关于EF4。我想知道EF6中是否引入了ToFuture
功能?
答案 0 :(得分:1)
ToFuture
不是EF6中的核心功能。
但是,一个名为EntityFramework.Extended的开源项目为EF提供了一些附加功能,包括 Futures 。
EF扩展语法为Future
。
nuget package似乎支持EF 6。