Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from t in dbContext.TrackerRecords
- where t.DeviceSerial.Value.Equals(deviceSerial) &&
- t.Date.Value >= fromDate && t.Date.Value <= toDate
- orderby t.Date.Value descending
- group t by t.Date.Value.Date into g
- select new TripDataModel
- {
- Day = g.Key,
- Trips = (from x in g
- group x by x.Date.Value.Hour into gj
- where gj.Max(m => m.Speed.Value) > 0
- let AvgSpd = gj.Average(m => m.Speed.Value)
- select new TripModel
- {
- MinSpeed = gj.Min(m => m.Speed.Value),
- MaxSpeed = gj.Max(m => m.Speed.Value),
- AvgSpeed = AvgSpd > 0 ? Math.Round(AvgSpd, 2, MidpointRounding.AwayFromZero) : 0,
- FromHour = new DateTime(g.Key.Year, g.Key.Month, g.Key.Day, gj.Key, 0, 0)
- })
- }
- from t in dbContext.TrackerRecords.ToList()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement