将最近50分钟记录的Sql查询转换为Linq查询



Sql查询:

select Latitude,Langitude,Time from tblLatLang
where Time < GetDate()
and Time > (DateADD(mi, -50, GetDate()))

先生,我是新来的Linq。我有上面的SQL查询,并希望将其转换为Linq。以上查询在SQL中做得很好。

下面是等效的LINQ to Entities查询:

var query =
    from t in db.tblLatLang
    where t.Time < DateTime.Now
       && t.Time > DbFunctions.AddMinutes(DateTime.Now, -50)
    select new { t.Latitude, t.Langitude, t.Time };

你可以看到,这几乎是一对一的翻译。请记住,LINQ selectfrom之后:)LINQ to Entities的另一个特定细节是不支持DateTime.AddMinutes方法,因此您应该使用DbFunctions.AddMinutes规范化函数。

最新更新