Entity Framework, MVC 3, OrderBy em LINQ To Entities
Eu tenho a seguinte consulta:
model.Page = db.Pages
.Where(p => p.PageId == Id)
.Include(p => p.Series
.Select(c => c.Comics
.Select(col => col.Collection)))
.SingleOrDefault();
Isso funciona muito bem, embora agora eu precise encomendar os quadrinhos por uma propriedade chamada 'ReadingOrder'
Eu tentei
model.Page = db.Pages
.Where(p => p.PageId == Id)
.Include(p => p.Series.Select(c => c.Comics.OrderBy(o => o.ReadingOrder)
.Select(col => col.Collection)))
.SingleOrDefault();
Mas isso resulta no seguinte erro:
A expressão do caminho Incluir deve se referir a uma propriedade de navegação definida no tipo. Use caminhos pontilhados para propriedades de navegação de referência e o operador Selecionar para propriedades de navegação de coleção. Nome do parâmetro: path
Alguma idéia do que esse erro significa?
Desde já, obrigad
EDITAR
Meus modelos:
public class Page
{
public int PageId { get; set; }
public string Title { get; set; }
public ICollection<Series> Series { get; set; }
}
public class Series
{
public int SeriesId { get; set; }
public int PageId { get; set; }
public string Title { get; set; }
public Page Page { get; set; }
public ICollection<Comic> Comics { get; set; }
}
public class Comic
{
public int ComicId { get; set; }
public string Title { get; set; }
public int ReadingOrder { get; set; }
public string Subtitle { get; set; }
public int CollectionId { get; set; }
public Collection Collection { get; set; }
}
public class Collection
{
public int CollectionId { get; set; }
public string Title { get; set; }
public ICollection<Comic> Comics { get; set; }
}