Desidero ordinare i valori selezionati in una data diversa ascendente.selezionare valori tolist() in caso di ordinata data distinta
Ad esempio, ho questi valori nel mio database.
ID | Value | Date
1 | 35 | 2012/01/20
2 | 0 | 2012/01/20
3 | 10 | 2012/02/01
4 | 0 | 2012/02/01
5 | 0 | 2012/03/01
6 | 0 | 2012/03/01
Dal ID 1 ha un valore il 20 gennaio e ID 3 ha un valore sul 1 febbraio voglio queste due date per essere selezionati alla mia lista di valori di data distinti. Ma per ID 5 e 6 entrambi hanno valore 0. Quindi se il valore è 0 voglio anche il valore 0 da aggiungere.
Ora il mio linqquery assomiglia a questo
var totalHours = (from u in context.Users
join r in context.Reports on u.Id equals r.UserId
join w in context.Weeks on r.Id equals w.ReportId
join d in context.Days on w.DayId equals d.Id
orderby d.Date ascending
where r.weekNr.Equals(currentWeek)
select d.Hour).ToList();
Ma questa domanda naturalmente mi dà 35,0,10,0,0,0 come risultato. Anche se desidero darmi 35,10,0
Non voglio selezionare valori distinti, diciamo se il 1 ° febbraio e il 2 febbraio hanno gli stessi valori. Voglio che entrambi questi valori siano aggiunti.
si desidera raggruppare e ordinare la lista in base al valore? – ARZ
@rickard - quindi se c'è un valore diverso da 0 (id 1) e quindi un altro valore che è 0 (id 2) vuoi solo quello non zero? Potrebbe accadere che id 1 = 35, id 2 = 50? Se è così, vuoi entrambi? –
@Joanna se il valore è uguale per la stessa data (in questo caso 0) voglio anche il valore 0 da aggiungere alla lista(). – rickard