Привет, ребята у меня есть модель, как это:OrderByDescending в EF не работает
public partial class Path
{
public Path()
{
this.Sensors = new HashSet<Sensor>();
}
public int Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public string StartStationId { get; set; }
public string EndStationId { get; set; }
public int LineId { get; set; }
public string Order { get; set; }
public virtual Line Line { get; set; }
public virtual ICollection<Sensor> Sensors { get; set; }
}
Я попытался упорядочить список данного лица следующим кодом:
List<Path> lstPath = _dbcontext.Paths.Where(i=>i.LineId==lineNumber).OrderByDescending(i => i.Order).ToList();
Кстати я меняю его на этот код:
List<Path> lstPath = _dbcontext.Paths.Where(i=>i.LineId==lineNumber).ToList();
lstPath = lstPath.OrderByDescending(i => i.Order).ToList();
Но он не сортирует список по коду заказа !!! Почему?
С наилучшими пожеланиями
Что выглядит «Order»? Какой порядок вы видите и чего вы ожидаете? –
Как выглядит значение 'Order'? Это число, которое хранится в виде строки? Скорее всего, вы сортируете по алфавиту вместо численного, и, возможно, сначала нужно его преобразовать: 'lstPath.OrderByDescending (i => Convert.ToInt32 (i.Order))' –
Объясните, что означает «не работает». Что, в частности, идет не так? Вы говорите ему делать что-то совершенно другое, а именно сортировать список в памяти, а не запрашивать базу данных для сортировки данных, и они могут определить «сортировку» по-разному, но они оба будут «работать». – Servy