【发布时间】:2009-03-10 22:52:08
【问题描述】:
我想编写一个 Linq to Sql 查询,它按用户名和日期时间进行计数和分组。我希望 DateTime 的格式类似于“YYYY-MMM”(即 2009-Mar)。
我认为这可行,但 Linq to Sql 无法解析 ToString“格式”参数。
dc.MyTable
.GroupBy(r => new
{
Name = r.UserName,
YearMonth = r.SomeDateTime.ToString("yyyy-MMM")
})
.Select(r => new
{
Name = r.UserName,
YearMonth = r.YearMonth,
Count = r.Count()
})
.OrderBy(r => r.YearMonth)
.ThenBy(r => r.Name);
有人有什么想法/建议吗?
谢谢。
【问题讨论】:
-
顺便说一句 - 如果您愿意,您实际上可以使用查询语法而不是流利/扩展方法来编写它。但是,如果您对当前代码感到满意,请保持“原样”...
-
我实际上更喜欢扩展/lambda 语法而不是查询语法。只是个人喜好。
标签: c# sql-server linq