SelectList вообще не сортируется - PullRequest
0 голосов
/ 11 января 2011
public static SelectList HolidayDays()
{
    SelectList retval = GenerateKeyValueList<HolidayCity>(HolidayCityHelper.GetFriendlyName, HolidayCity.NotSet);

    //sort
    retval.OrderBy(i => i.Text == "New York")
          .ThenBy(i => i.Text == "London")
          .ThenBy(i => i.Text);

    return retval;
}

Почему сортировка SelectList не выполняется вообще?Он остается в том же порядке, в котором он находится, прежде чем я даже выполню операции сортировки, но он компилируется и запускается без ошибок.

1 Ответ

4 голосов
/ 11 января 2011

OrderBy и ThenBy возвращают коллекцию, для которой вы не устанавливаете возвращаемое значение;


SelectList retval = GenerateKeyValueList<HolidayCity>(HolidayCityHelper.GetFriendlyName, HolidayCity.NotSet);

return new SelectList(retval
        .OrderByDescending(i => i.Text == "New York")
        .ThenByDescending(i => i.Text == "London")
        .ThenBy(i => i.Text).ToList(), 
    "Value", "Text");
...