【问题标题】:Calculate mins in Linq在 Linq 中计算分钟
【发布时间】:2016-04-04 00:34:10
【问题描述】:

我正在尝试这样做以在 LINQ 中计算 LastDate 超过 15 分钟:

And DateTimeOffset.Now.Subtract(tbl.LastDate).Minutes >= 15

我收到了这个错误:

Method 'System.TimeSpan Subtract(System.DateTimeOffset)' has no supported translation to SQL.

【问题讨论】:

  • This question 关于使用 GETDATEDATEADD 可能会对您有所帮助。
  • Entity FrameworkLINQ to SQL?
  • 我正在使用 linq to sql

标签: asp.net vb.net linq


【解决方案1】:

除其他外,您可以使用 EntityFunctions 类对日期执行操作。

And (tbl.LastDate >= EntityFunctions.AddMinutes(DateTime.Now, -15))

如果你不使用实体函数,你可以这样做

DateTime oldestDate = DateTime.Now.AddMinutes(-15);

... 然后修改了 LINQ 查询的 where 部分

And (tbl.LastDate >= oldestDate )

【讨论】:

  • EntityFunctions 没有声明,我使用的是 .net 4.0
  • 我试过这个=> tbl.LastDate >= DateTimeOffset.Now.AddMinutes(-15),我觉得应该和你的答案一样吧?
  • 我不在 linq 中计算它。计算后你得到正确的答案吗?计算 linq 可能会给你例外。
猜你喜欢
  • 1970-01-01
  • 2018-01-22
  • 1970-01-01
  • 2019-09-28
  • 1970-01-01
  • 1970-01-01
  • 2016-09-27
  • 2012-04-20
  • 2014-02-08
相关资源
最近更新 更多