gpt4 book ai didi

c# - 如何跳过最后 2 条记录并使用 linq 获取所有其他记录?

转载 作者:太空狗 更新时间:2023-10-29 23:59:41 25 4
gpt4 key购买 nike

我有一个名为测试的表:

Test: Id, CreatedBy, CreatedDate

现在我想获取测试列表,但跳过最后 2 个测试。所以如果我说例如10 测试 然后我想得到 1 - 8 测试并跳过测试 9 和 10

这就是我尝试这样做的方式:

var query = context.Test.OrderByDescending(t=>t.Id).Skip(2) // How to take other records?

最佳答案

在这种情况下:Take(8)

TakeSkip你可以得到任何你想要的范围。

例如:

var query = context.Test.OrderByDescending(t=>t.Id);
var allButTheLastTwoElements = query.Take(query.Count() - 2);

最安全的方式:

var query = context.Test.OrderByDescending(t=>t.Id).ToList();
var allButTheLastTwoElements = query.Take(Math.Max(0,query.Count() - 2));

或者你可以反过来做(取决于你的要求)

var query = context.Test.OrderByAscending(t=>t.Id).Skip(2);

关于c# - 如何跳过最后 2 条记录并使用 linq 获取所有其他记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39198891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com