class Cat
{
public int CatID;
public string Name;
public ICollection<Post> Posts;
}
class Post
{
public int PostID;
public string Name
public int CatID;
public virtual Cat Parent;
}
And I want to load all the Cat(egories) with their Posts so:
var cats = context.Cat.Include(c => c.Posts);
Now I want to limit the number of Posts that are returned, can someone show me how to do that?
I'm using EntityFramework 4.3.1
It is not possible with eager loading (Include
) - eager loading returns always all related data. You must use projections to anonymous or new type (you cannot use your existing mapped entities):
var cats = context.Cat.Select(c => new
{
Category = c,
Posts = c.Posts.OrderBy(p => p.Name).Take(10)
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With