Tôi muốn đặt hàng các giá trị đã chọn theo ngày tăng dần khác biệt.chọn giá trị tolist() khi orderby ngày khác biệt
Ví dụ: tôi có các giá trị này trong cơ sở dữ liệu của mình.
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
Kể từ ID 1 có giá trị trên 20 tháng một và ID 3 có giá trị trên 01 tháng 2 tôi muốn hai ngày này để được lựa chọn vào danh sách của tôi về giá trị ngày riêng biệt. Nhưng đối với ID 5 và 6 đều có giá trị 0. Vì vậy, nếu giá trị là 0 tôi cũng muốn giá trị 0 được thêm vào.
Bây giờ linqquery của tôi trông như thế này
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();
Nhưng truy vấn này tất nhiên mang lại cho tôi 35,0,10,0,0,0 kết quả. Mặc dù tôi muốn cung cấp cho tôi 35,10,0
Tôi không muốn chọn các giá trị khác biệt, nếu ngày 1 tháng 2 và ngày 2 tháng 2 có cùng giá trị. Tôi muốn cả hai giá trị này được thêm vào.
bạn có muốn nhóm và sắp xếp danh sách theo giá trị không? – ARZ
@rickard - vì vậy nếu có một giá trị khác 0 (id 1) và sau đó một giá trị khác là 0 (id 2) bạn muốn chỉ là một số không? Nó có thể xảy ra mà id 1 = 35, id 2 = 50? Nếu vậy, bạn có muốn cả hai? –
@Joanna nếu giá trị bằng nhau cho cùng một ngày (trong trường hợp này 0) tôi cũng muốn giá trị 0 được thêm vào danh sách(). – rickard