【发布时间】:2016-08-17 13:37:25
【问题描述】:
我有一个Part 列表,其中包含一个DateTime 值,表示它们何时注册到我的Database。
我想显示每小时白班登记的人数和每晚登记的人数。
我试图将我的总体平均逻辑基于这两个值
@{
var shiftChangeTime = new TimeSpan(16, 0, 0);
<table>
<tr>
@*This is my general average*@
<td>Number of part/hour</td>
@{
var avg = Model.GroupBy(x => ((DateTime)x.ScanTime).TimeOfDay.Hours)
.Average(x => x.Count());
<td>@(Math.Round(avg, 2))</td>
}
</tr>
<tr>
@*This is my day average*@
<td>Number of part/hour</td>
@{
var avgDay = Model.GroupBy(x => ((DateTime)x.ScanTime).TimeOfDay < shiftChangeTime, y => ((DateTime)y.ScanTime).TimeOfDay.Hours)
.Average(x => x.Count());
<td>@(Math.Round(avgDay, 2))</td>
}
</tr>
<tr>
@*This is my night average*@
<td>Number of part/hour for night shift</td>
@{
var avgNight = Model.GroupBy(x => ((DateTime)x.ScanTime).TimeOfDay > shiftChangeTime, y => ((DateTime)y.ScanTime).TimeOfDay.Hours)
.Average(x => x.Count());
<td>@(Math.Round(avgNight, 2))</td>
}
</tr>
</table>
}
我目前坚持以小时为单位区分日班/夜班的逻辑。
现在它把我的总数一分为二。
知道如何进行吗?
【问题讨论】: