如何在LINQ lambda中订购父类的基础子集合

时间:2011-03-30 13:40:17

标签: linq entity-framework lambda linq-to-entities

例如:

_ctx.DataContext.Set<ParentClass>().Include("ChildCollection").OrderBy(...)

每次我在OrderBy子句中放置一个Lambda表达式时,我都无法访问ChildCollection属性中的属性,而我希望对底层子集合进行排序。我不希望任何特定列排序的父类。

如何使用LINQ / Lambda表达式实现此目的?好像它应该真的很容易!

1 个答案:

答案 0 :(得分:1)

急切加载无法订购导航属性。你必须使用这样的东西:

var query = _ctx.DataContext
                .Set<ParentClass>()
                .Select(p => new 
                   {
                      Parent = p,
                      Childs = p.ChildCollection.OrderBy(c => c.Something)
                   });