使用LINQ 對List分頁/區

listview之類的服務器控件分頁自不用多說,拖拖控件改改屬性分分鐘的事.就不浪費大家時間了.

這裏只寫大概思路及關鍵代碼了.

LINQ裏有一個對集合進行分區的操作可用於分頁.

pageSize:分頁大小,也就是一頁顯示的行數

curretPage:當前頁碼.先這麼理解吧

totalPages:總頁數

taotalPages=(int)Math.Ceiling(List<T>().Count / (double)pageSize);

這裏List<T>()就是你的集合.比如DataTable中的DataRow.

得到需要顯示的data.

var dataList=(from r in List<T>()).Skip(curretPage*pageSize).Take(pageSize)

最後一頁,pageSize如果大於剩餘count,則只獲取剩餘count的list.不會throw exception.

下一次request只需在改變currenPage即可.

具體設計就不贅述了.當然上述方法for asp.net同樣適用.

希望對大家有幫助.

时间: 2024-10-27 14:15:04

使用LINQ 對List分頁/區的相关文章

操作系統3-內存管理(分區存儲和頁式存儲)

操作系統3-內存管理(分區存儲和頁式存儲) 2. 分區存儲管理方式 分區管理的基本思想是:將內存空間氛圍一個或若干個連續的區域,稱為分區.每個分區可以存放一個獨立的用戶程序.分區的特點是一個程序可以連續地加載內存. 分區可以分為:單一分區.固定分區.可變分區和重定位分區. 2.1 單道程序的連續分配 單道程序的連續分配方式將內存分為系統區和用戶區,只能用於單用戶.單任務的操作系統. 系統區 系統區僅供操作系統使用,一般駐留在內存的低地址區,其中包括中斷向量.中斷向量是操作系統的核心功能模塊加載內

問題排查:行動裝置網頁前端 UI 設計 (1)

這是最近開始接手的一個微信公眾平台專案, 在重整後端程式碼時,因為也需要透過前端來看效果, 所以就因此在前端的部分遇到了不少問題, 畢竟這是以前沒接觸過的領域 (早年的網頁應用程式開發沒有那麼多分工) 經初步探索,得知此案似乎採用了 Intel 的 App Framework 套件, 大致上看一遍官網的簡介之後,就下載了最新版本 3.0 來玩玩看 然後就拿了一個有資料分頁的來嘗試 這不玩還好,一玩就捅了好幾個馬蜂窩等著我去收拾 頁面結構如下: <div class="view"

[WinForm] 使用 WebBrowser 操作 HTML 頁面的 Element-摘自网络

前言 在 Window Form 應用程式如果需要瀏覽網頁時可以崁入 WebBrowser 控制項,但如果需要操作崁入的 HTML 的網頁元素,就需要額外的操作,以下紀錄幾種操作 HTML 元素的方法以及會碰到的問題. 建立 WinForm 應用程式 首先先建立一個 Window Form 應用程式,在 Form1 表單上拉入一個 Button 與 WebBrowser 控制項,如下 在 Button1 事件中使用 WebBrowser.Navigate 方法載入指定的網頁,如下 view so

頁表相關(一

(純頁式)分頁存儲的邏輯地址(A bit)結構為 頁號(P) | 偏移量(W) 則此一級頁表的頁大小為2^W bit 若頁表項大小為b bit,則每個頁面可以容納(2^W/b)個表項 以2為底取對數得B [log2(2^W/b)=B] 即需B位長的二進制數表示頁號,2^B=2^W/b (單頁內頁號長度 從結構已知邏輯地址中頁號長度為P,那麼頁表級數(二級/三級頁表或更高)=[P/B]{取整} 例.若邏輯地址為32bit(具體情況下要觀察題目中以比特/字節編址?),頁表項大小為4B P(20) |

.NET深入解析LINQ框架(二:LINQ优雅的前奏)

阅读目录: 1.LINQ框架的主要设计模型 1.1.链式设计模式 (以流水线般的链接方式设计系统逻辑) 1.2.链式查询方法(逐步加工查询表达式中的每一个工作点) 2.LINQ框架的核心设计原理 2.1.托管语言之上的语言(LINQ查询表达式) 2.2.托管语言构造的基础(LINQ依附通用接口与查询操作符对应的方法对接) 2.3.深入IEnumerable.IEnumerable<T>.Enumerable(LINQ to Object框架的入口) 2.4.深入IQueryable.IQuer

用LINQ在集合中查询特定对象

这里是原文出处: 简单的概括LINQ LINQ是Language-Integrated Query的缩写,是C# 3.0和VB 9.0中新加入的语言特性,可以在编程时使用内置的查询语言进行基于集合的操作. List<User> userList = GetUserList(); var userWithOddId = from u in userList where u.UserID % 2 == 1 select u; foreach (User u in userWithOddId) {

.NET深入解析LINQ框架1

1.LINQ简述 2.LINQ优雅前奏的音符 2.1.隐式类型 (由编辑器自动根据表达式推断出对象的最终类型) 2.2.对象初始化器 (简化了对象的创建及初始化的过程) 2.3.Lambda表达式 (对匿名方法的改进,加入了委托签名的类型推断并很好的与表达式树的结合) 2.4.扩展方法 (允许在不修改类型的内部代码的情况下为类型添加独立的行为) 2.5.匿名类型 (由对象初始化器推断得出的类型,该类型在编译后自动创建) 2.6.表达式目录树(用数据结构表示程序逻辑代码) 3.LINQ框架的主要设

Fontface Ninja 一鍵查看網頁使用的字型名稱、大小和行高,快速下載字體檔案

對於網頁設計有興趣的朋友,一定很習慣在上網時注意網頁所使用的字型,若是比較有經驗的使用者會透過找網頁原始碼的方式來查看網頁使用的字型,或是從 CSS 檔裡去挖掘該網站使用的是那一種字型組合.先前我曾介紹過 WhatFont Tool,可以快速顯示網頁使用的字型.大小和行高,是個相當方便的工具,本文要再介紹另一個更強大的工具,它不但能夠幫你快速查詢到字型等資訊,還可以直接在網頁上測試文字實際套用該字體所顯示的樣式,以及一鍵將字型檔案下載到電腦裡. Fontface Ninja 是一個相當好用的瀏覽

操作系統3-內存管理(頁面置換算法)

操作系統3-內存管理(頁面置換算法) 7. 頁面置換算法 在上一節講過, 換入換出頁面要根據特定的算法來執行, 這種算法就是頁面置換算法. 不合適的算法可能會使系統發生抖動,所謂抖動即指剛剛換出的頁面又要換回來,換回來不久又要換出去,這樣就導致系統的大部分工作時間都花在了頁面調度上,導致效率不高. 下面是幾種常見的頁面置換算法: 7.1 先入先出頁面置換算法 顧名思義,根據隊列的數據結構的思想,總是將內存存在最久的頁面先換出. 7.2 最近最久未使用頁面置換算法(Least Recently U