Сортировка результатов запроса NHibernate - PullRequest
0 голосов
/ 19 апреля 2011
public IEnumerable GetActive() 
{
   return Session.CreateQuery("from Agency where active=true order by agencyname").List();
}

Очевидно, я могу отсортировать сам запрос, но что делать после этого? Я просто хочу отсортировать IEnumerable возвращается сюда. Я могу просто использовать результат в цикле foreach, но у меня нет функций, доступных в стандартной коллекции списков (таких как использование LINQ для сортировки данных). Какой метод сортировки самый лучший?

Редактировать: это сработало, и сохранилась возможность использовать foreach:

public IEnumerable<Agency> GetActive() 
{
   return Session.CreateQuery("from Agency where active=true order by agencyname").List<Agency>();
}

foreach (Agency agency in agencies.OrderBy(c=>c.AgencyId)) { ... }

Ответы [ 2 ]

3 голосов
/ 19 апреля 2011

вам нужно вернуть строго типизированный список сущностей, сопоставленных с этой таблицей

public IEnumerable<Agency> GetActive() 
{
   return Session.CreateQuery("from Agency where active=true")
   .List<Agency>().orderby(c=>c.agencyname);
}
0 голосов
/ 19 апреля 2011

Вы можете преобразовать IENumerable в LIst с помощью метода ToList (), а затем отсортировать.

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