Запрос, который возвращает сущность и дочернюю коллекцию. Дочерняя коллекция отсортирована? - PullRequest
0 голосов
/ 21 августа 2009

Как я могу создать запрос, который будет возвращать одну сущность вместе с коллекцией и отсортировать коллекцию? Мне все равно, если это два вызова в БД .. Мне просто нужно, чтобы конечный результат был тип сущности, а не анонимный тип:

вар

category = context.Categories.Where (c => c.categoryID == categoryID). Выберите (c => new {c, products = c.Products.OrderByDescending (p => p.priceDate)}). Сначала ();

Но я бы хотел, чтобы вышесказанное было либо возвращено, либо приведено к категории с коллекциями продуктов ... в отличие от анонимного типа спасибо!

Ответы [ 2 ]

0 голосов
/ 21 августа 2009

Не могли бы вы просто поместить это в класс категории? Примерно так:

public parital class Category 
{
        public Ilist<Product> ProductsByPriceDate
        {
          get
          {
              return this.Products.OrderbyDescending(p= > p.priceDate).ToList();
          }
        }
    }
0 голосов
/ 21 августа 2009

Если у вас есть правильные отношения внешнего ключа в вашей базе данных, тогда достаточно простого выбора для вашей категории, а затем вы можете заказать продукты так:

Category category = context.Categories.Where(c => c.categoryID == categoryID).First();

List<Product> sortedProducts= context.Categories.products.OrderBy(...).ToList()

Когда ваши отношения FK устанавливаются, когда вы получаете объект верхнего уровня, он должен также получать его дочерние элементы (я не работал с linq-to-entity, но с linq-to-sql я не могу представить, что он отличается в этом аспекте ) Я думаю, что выше должно работать ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...