我有以下代码:
class Program
{
    static void Main(string[] args)
    {
        foreach (var item in GetEnumerable().Skip(100))
        {
            Console.WriteLine(item);
        }
    }
    static IEnumerable<int> GetEnumerable(int? page = null, int limit = 10)
    {
        var currentPage = page ?? 1;
        while (true)
        {
            Thread.Sleep(1000); // emulates slow retrieval of a bunch of results
            for (int i = limit * (currentPage - 1); i < limit * currentPage; i++)
            {
                yield return i;
            }
            currentPage++;
        }
    }
}
我希望能够.Skip(n)有效地跳过我不需要的结果。因此,例如,如果我使用Skip(100)并且每个请求检索 10 个项目,则应完全跳过前 10 个请求。
有没有我可以用来实现这一目标的模式?