Как отсортировать внутренний список, который возвращается структурой сущности? - PullRequest
5 голосов
/ 20 октября 2010

Как отсортировать внутреннюю коллекцию объекта, возвращаемую структурой сущностей?

public class X
{
   public string Field {get; set;}
   public EntityCollection<Y> Ys {get; set;}
}

public class Y
{
   public string Field {get; set;}
}

from x in entities.Xs
orderby x.Field
select x

Есть ли способ изменить этот запрос LINQ, чтобы он возвращал объекты X, а также сортировал объекты Y? Или я должен вручную сортировать список Y, когда он возвращается?

EDIT:

Этот код должен возвращать коллекцию объектов типа X, анонимный ввод не соответствует требованиям текущего проекта.

1 Ответ

4 голосов
/ 20 октября 2010
var sortedList = from x in entities.Xs
                 orderby x.Field
                 select new {
                   Field = x.Field,
                   y = (select y in x.Ys
                        orderby y.Field
                        select y)
                 };

Отредактировано: Если вам не нужны анонимные типы, сделайте следующее:

var sortedList = from x in entities.Xs
                 orderby x.Field
                 select new X {
                   Field = x.Field,
                   y = (select y in x.Ys
                        orderby y.Field
                        select y)
                 };
...