简体   繁体   English

如何使用 linq 获取最后 10 分钟的记录?

[英]How to get last 10 mins records using linq?

I want to write LINQ query from last 10 mins inserted records from table.我想从表中最近 10 分钟插入的记录中编写 LINQ 查询。 How do I write it?我该怎么写? Please help me.请帮我。

Below is my SQL query:下面是我的 SQL 查询:

SELECT AccountNumber, OrderID,RechargeDate 
FROM    OrderItem OI
WHERE RechargeStatus = 'SUCCESS' 
  AND AccountNumber ='" + AccountNumber + "' and DateADD(minute, -10,getdate() ) < RechargeDate  AND OrderItemID <> " + OrderItemID + "";

Now, I want to rewrite the query above using LINQ.现在,我想使用 LINQ 重写上面的查询。

You need to use Where linq extension method.您需要使用Where linq 扩展方法。

db.OrderItems.Where(x => x.RechargeStatus.Equals("SUCCESS") && 
                         x.AccountNumber == strAccountNumber &&
                         x.RechargeDate > DateTime.Now.AddMinutes(-10) &&
                         x.OrderItemID != OrderItemID )

you can use this way:你可以这样使用:

db.OrderItems.Where(x=>x.RechargeStatus.Equals("SUCCESS") && 
                   x.AccountNumber == strAccountNumber &&
                   x.RechargeDate >= DateTime.Now().AddMinutes(-10) &&
                   x.OrderItemID != OrderItemID )

it's returned till last 10 minutes created records.它返回到最后 10 分钟创建的记录。 i have checked greater than equal.我检查过大于等于。

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

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