我正在使用Entity Framework Code First,遇到了一个小问题。我定义了一个名为“Person”的类:
public class Person
{
public Guid Id { get; set; }
public virtual ICollection<History> History { get; set; }
}
而一个类“History”定义如下:
public class History
{
public Guid Id { get; set; }
public virtual Person Owner { get; set; }
public DateTime OnDate { get; set; }
}
然而,当我调用以下代码时:
IEnumerable<History> results = person.History
.OrderBy(h => h.OnDate)
.Take(50)
.ToArray();
它似乎会提取这个人的所有历史记录,然后在内存中进行排序等操作。有什么建议我可能忽略了些什么吗?
提前感谢!