如何在EF中使用Include with Lambda?

时间:2010-10-01 13:57:23

标签: entity-framework csla

根据这篇文章,你可以做到包括使用lambda表达式http://romiller.com/2010/07/14/ef-ctp4-tips-tricks-include-with-lambda/

例如......

var blogsWithPosts = context.Blogs.Include(b => b.Posts);

所以我有......

IQueryable<Data.Patient> query = ctx.ObjectContext.Patients
                    .Include("Person");

我想拥有它......

 IQueryable<Data.Patient> query = ctx.ObjectContext.Patients
                    .Include(row => row.Person);

我添加了System.Data.Entity的导入...但仍然无法实现。我正在使用Csla,所以我的上下文对象设置为...

using (var ctx = Csla.Data.ObjectContextManager<ApplicationEntities>.GetManager(Database.ApplicationConnection, false))
 {
 }

这可能是问题......任何帮助都会非常感激!

1 个答案:

答案 0 :(得分:7)

这不是标准ObjectQuery<T>.Include Method的重载,仅仅是 ObjectQuery<T> 类的扩展方法 EF CTP4
要将 Include 方法与lambda一起使用,您需要download ADO.NET Entity Framework Feature Community Technology Preview 4,然后添加对 Microsoft.Data.Entity.Ctp.dll 的引用随之而来。