相关疑难解决方法(0)

在LINQ to Entities中按周分组

我有一个应用程序,允许用户输入他们工作的时间,我正在尝试为此构建一个良好的报告,利用LINQ to Entities.因为每个TrackedTimeTargetDate只是a的"Date"部分DateTime,所以按用户和日期对时间进行分组相对简单(为简单起见,我省略了"where"子句):

var userTimes = from t in context.TrackedTimes
                group t by new {t.User.UserName, t.TargetDate} into ut
                select new
                {
                    UserName = ut.Key.UserName,
                    TargetDate = ut.Key.TargetDate,
                    Minutes = ut.Sum(t => t.Minutes)
                };
Run Code Online (Sandbox Code Playgroud)

由于该DateTime.Month属性,按用户分组和Month只是稍微复杂一点:

var userTimes = from t in context.TrackedTimes
                group t by new {t.User.UserName, t.TargetDate.Month} into ut
                select new
                {
                    UserName = ut.Key.UserName,
                    MonthNumber = ut.Key.Month,
                    Minutes = ut.Sum(t => t.Minutes)
                };
Run Code Online (Sandbox Code Playgroud)

现在是棘手的部分.是否有可靠的方式按周分组?我根据对类似LINQ to SQL问题的响应尝试了以下内容:

DateTime firstDay = …
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-entities entity-framework

39
推荐指数
3
解决办法
3万
查看次数

标签 统计

c# ×1

entity-framework ×1

linq ×1

linq-to-entities ×1