如何在linq查询中使用强制转换,DATEADD,DATEDIFF?

时间:2015-07-16 06:12:22

标签: linq linq-to-sql

我在C#应用程序中使用LINQ查询。

我的SQL查询如下所示:

select cast(DATEADD(hh, -4, [firstdate]) as DATE) as [Date], COUNT(Name) as 'Total Name',
from Database.dbo.DatabaseName with (nolock)
where DATEDIFF(dd, DATEADD(hh, -4, [firstdate]), getdate()) between 1 and 7
group by cast(DATEADD(hh, -4, [firstdate]) as DATE)
order by cast(DATEADD(hh, -4, [firstdate]) as DATE)

但我不知道如何在LINQ查询中使用它

有人可以帮我吗?

1 个答案:

答案 0 :(得分:3)

您可以使用具有DateAddDateDiff方法的SqlFunctions类,有效地作为SQL代码的代理。

您的LINQ to SQL可能只调用DateAdd一次 - 如果您选择它,则可以按该选择的结果进行分组,然后选择每个组的密钥和计数。