2016-03-08 3 views
1

Im пытается сделать заказ регистрами я взять из заявления Linq, прежде чем я сохранить их в список, однако им не в состоянии сделать это элементы продолжают получать неупорядоченноеLinQ Заказывайте на ViewBag

Это мой LinQ

foreach (var item in db.Pos.OrderByDescending(x => x.Fecha).Select(l => l.Fecha).Distinct()) 
     { 
      dateday = item.ToString("yyyy-MM-dd"); 
      var listItem = new SelectListItem { Value = dateday, Text = dateday }; 
      listItem.Selected = today.Day == item.Day; 
      listdate.Add(listItem); 

     } 
     ViewBag.Fechas = listdate; 

Но это мой выход на мой взгляд:

<select id="Fechas" name="Fechas"><option value="2016-03-06">2016-03-06</option> 
 
<option value="2016-03-04">2016-03-04</option> 
 
<option value="2016-03-07">2016-03-07</option> 
 
<option value="2016-03-01">2016-03-01</option> 
 
<option value="2016-03-02">2016-03-02</option> 
 
<option value="2016-03-05">2016-03-05</option> 
 
<option selected="selected" value="2016-03-08">2016-03-08</option> 
 
<option value="2016-03-03">2016-03-03</option> 
 
</select>

И это выход мне нужно:

<select id="Fechas" name="Fechas"> 
 
<option selected="selected" value="2016-03-08">2016-03-08</option> 
 
    <option value="2016-03-07">2016-03-07</option> 
 
    <option value="2016-03-06">2016-03-06</option> 
 
    <option value="2016-03-05">2016-03-05</option> 
 
    <option value="2016-03-04">2016-03-04</option> 
 
    <option value="2016-03-03">2016-03-03</option> 
 
    <option value="2016-03-02">2016-03-02</option> 
 
    <option value="2016-03-01">2016-03-01</option> 
 

 
</select>

ответ

5

Distinct явно указано, что порядок возвращаемых результатов не поддерживается. Вам необходимо заказать предметы после, выполнив Distinct.

+0

Элементы из db в sql, как я могу заказать перед использованием distinc? –

+1

@ArturoMartinez Вы * не можете * заказать перед использованием 'Distinct'. В этом весь смысл ответа, поэтому бессмысленно, поскольку «Distinct» собирается переупорядочить элементы. – Servy

Смежные вопросы