繁体   English   中英

如何通过在 C# 中按 DATEPART 月份使用 Linq 组来获取 int

[英]how to get int by using Linq group by DATEPART month in C#

我有一个 StayDormApplications 表,我有一个 SQL,如下所示,

var systemFilesItem = _db.StayDormApplications.Single(r => r.Id == dormapplication.Id);
string SQL = "SELECT  sum(days) days from StayDormApplications where poster = '" + LoginAccount + "' and DATEPART(MONTH, Sdate) = '"+ month_name + "' group by DATEPART(MONTH, Sdate);"; // 

如何使用 (c#) LINQ 转换 SQL?

您可以尝试使用SqlFunctions.DatePart来创建它,否则,您的查询似乎不需要使用group by因为您根据条件对其进行了过滤。

var systemFilesItem = _db.StayDormApplications
                          .Where(x=> x.poster == LoginAccount && SqlFunctions.DatePart("MONTH", x.Sdate).Value == month_name)
                          .Sum(x=> x.days);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM