亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

不用sql語句怎么進行分頁

不用sql語句怎么進行分頁

瀟湘沐 2018-11-26 14:16:35
不用sql語句怎么進行分頁
查看完整描述

3 回答

?
largeQ

TA貢獻2039條經驗 獲得超8個贊

使用linq的skip take還是比較方便的。

查看完整回答
反對 回復 2018-11-30
?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

一共有5000條記錄,每頁50條記錄;那么第2頁的記錄必然是第51到第100的數據,根據索引把數據過濾出來,顯示到頁面上就可以了。

查看完整回答
反對 回復 2018-11-30
?
牛魔王的故事

TA貢獻1830條經驗 獲得超3個贊

這個你可以過濾啊。

你的希望應該是:有一個5000條記錄的集合,希望能從指定位置開始獲取指定數量的一個連續的子集吧?

如果你用LinQ可以使用下面的代碼

public IEnumable GetData(IEnumable source, int startIndex, int size)
{    return source.Skip(startIndex).Take(size);
}

如果你用的不是LinQ,那么:

public IEnumable GetData(IEnumable source, int startIndex, int size)
{    int index = 0;    foreach(var item in source)
    {        if(index < startIndex)
        {            continue;
        }        if(index - startIndex > size)
        {            break;
        }        yield return item;
}

當然,上面的枚舉方法不是很好,不過,一般的情況下,你的集合應該能確定類型,比如是LIST或ARRAY等,也就是說能進行下標索引的,此時就更簡單了,下面的代碼就用數組來實現:

public IEnumable GetData(object[] source, int startIndex, int size)
{    for(int i = startIndex; i < startIndex + size && i < source.Length; i++)
    {        yield return source[i];
    }
}


查看完整回答
反對 回復 2018-11-30
  • 3 回答
  • 0 關注
  • 779 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號