在linq查询中将一列添加到datetime列的分钟

时间:2011-10-11 16:14:51

标签: c# linq

我的数据库中有一个名为Created的列,它是一个日期时间和一个名为Minutes的列,它是一个varchar(5),包含0,60,120等值。

如何编写仅返回这些记录的LINQ语句:

Created + Minutes已经过了当前时间?

谢谢!

---更新:代码到目前为止---

var results = from emails in MyDAL.Context.Emails
   emails.Created.Value.AddMinutes(double.Parse(emails.Minutes)) > DateTime.Now
   select emails;

2 个答案:

答案 0 :(得分:2)

对于寻找答案的其他人来说,这就是我最终让它发挥作用的方式......

System.Data.Objects.EntityFunctions.AddMinutes(emails.Created, emails.Minutes) < DateTime.Now

答案 1 :(得分:1)

你可以尝试

DateTime now = DateTime.UtcNow;

var query = from record in db.Records
            where record.Create.AddMinutes(int.Parse(record.Minutes)) > now
            select record;

这是否有效取决于LINQ提供商......