我有一个简单的父/子表,我想使用Entity Framework填充一个SQL语句。像这样:
public class Parent
{
public long ParentId { get; set; }
public virtual List<Child> Children { get; set; }
}
public class Child
{
public long ChildId { get; set; }
public long ParentId { get; set; }
public DateTime DateCreated { get; set; }
}
public Parent GetParent (long parentId)
{
IQueryable<Parent> query =
(from a in db.Parents.Include("Children")
where a.ParentId == parentId
select a);
return query.FirstOrDefault();
}
这似乎可以在一个SQL语句中获取Parent和所有Children。我现在要做的是按DateCreated字段命令子列表,但我无法弄清楚如何做到这一点。我见过关于使用ThenBy()的帖子,但是没有看到如何在上面的Linq中注入。我应该有更好的方法来制定Linq吗?
-shnar
答案 0 :(得分:2)
不幸的是,这不受支持。您无法通过Linq-to-entities订购包含的记录。只能订购父记录。但你仍然可以做类似的事情:
var parent = GetParent(id);
var orderedChildren = parent.Children.OrderBy(c => c.DateCreated);