Я пытаюсь заказать атрибут связанного объекта. Это пример. У меня есть эти два класса:OrderBy using Dynamic Linq with Relation
public class Publication
{
public int Id { get; set; }
public string Name { get; set; }
public List<Product> Products { get; set; }
}
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public int PublicationId { get; set; }
[ForeignKey("PublicationId")]
public Publication Publication { get; set; }
public int Category { get;set; }
}
Теперь мне нужно, чтобы получить все публикации с продукта Категория = 1 и упорядочены по публикации Id по алфавиту:
IQueryable<Publication> query = db.Publications.Where("Products.Any(Category = 1)");
List<Publication> list = query.OrderBy("Id desc").ToList();
Это работает отлично! Но ... Как я могу заказать публикации по категории продукта (desc или asc) с помощью Dynamic Linq?
Не можете ли вы просто сделать OderByDescending? (https://msdn.microsoft.com/en-us/library/bb534861(v=vs.110).aspx) – Clueless
Заказ (по возрастанию или по убыванию) теперь не является проблемой. Проблема заключается в том, как упорядочить (в asc или desc) отношение. В этом случае Категория (из Продукта) –
'Publication' имеет один или несколько продуктов и, следовательно, категории. Сначала вы должны определить, как хотите сортировать коллекции категорий. –