1. 程式人生 > >ASP EF框架,擴充套件函式和lambda表示式實現排序和分頁

ASP EF框架,擴充套件函式和lambda表示式實現排序和分頁

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WebApplication1
{
    public partial class WebForm3 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        //擴充套件函式和lambda表示式實現查詢。擴充套件函式實現排序。擴充套件函式Skip和Take實現分頁
        protected void Button1_Click(object sender, EventArgs e)
        {
            //Func<UserInfo, bool> whereLambda = u => { return u.ID == 343; };

            EFFristModelEntities db = new EFFristModelEntities();
            //var userInfoList = db.UserInfo.Where<UserInfo>(u=>u.ID==3);  //通過擴充套件函式where和lambda表示式來查詢。<UserInfo>泛型可以省略。

            //升序排序
            //var userInfoList = db.UserInfo.Where<UserInfo>(U => true).OrderBy<UserInfo, int>(u => u.ID);  //根據u.ID排序,int是根據u.ID的型別來判斷的。<泛型>可以省略。
            //降序排序
            //var userInfoList = db.UserInfo.Where<UserInfo>(U => true).OrderByDescending(u => u.ID);  //擴充套件函式OrderByDescending實現降序排序。
            //var userInfoList = db.UserInfo.Where<UserInfo>(U => true).OrderByDescending(u => u.UserPass).ThenByDescending<UserInfo, int>(u => u.ID);//擴充套件函式OrderByDescending,ThenByDescending實現排序。
            
            int pageIndex = 2;
            int pageSize = 2;
            var userInfoList = (from u in db.UserInfo
                                where u.ID > 0
                                orderby u.RegTime ascending, u.ID descending  //linq表示式實現排序。
                                select u).Skip<UserInfo>((pageIndex - 1) * pageSize).Take<UserInfo>(pageSize);  //分頁:Skip:跳過多少條記錄;Take:取幾條記錄。

            foreach (var userInfo in userInfoList)
            {
                Response.Write(userInfo.UserName + "<br/>");
            }
        }
    }
}


相關推薦

ASP EF框架擴充套件函式lambda表示式實現排序

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControl

ASP EF框架資料庫操作類(上下文類)的例項建立執行緒內唯一物件(HttpContext)

因為多個數據庫操作類例項(上下文例項),多個例項同時操作資料庫可能會引起資料衝突,所以要用一個(同一個)操作類例項(工作單元模式,多次操作資料庫,操作多張表,但只連結一次資料庫,提高效能。(延遲載入(查詢),打上刪除、修改標記,新增操作,然後利用同一個資料庫操作類.Save

基於asp.net + easyui框架一步步學習easyui-datagrid——實現搜尋(二)

目錄:        上篇部落格我只是將介面的部分完成了,繼續上篇部落格的內容,這篇部落格我們需要將資料庫中的記錄顯示到介面上,並實現資料的分頁顯示。        曾經我寫過分頁的部落格,分頁很簡單, 本質區別在於分頁時從資料庫讀取資訊的方式:假分頁:一次性讀取

《零基礎入門學習Python》(21)--函式lambda表示式(內建BIF filte()map())

前言 接下來學習怎麼建立匿名函式 知識點 lambda 表示式 Python 允許使用lambda關鍵字建立匿名函式 lambda 函式怎麼使用?  單個引數 >>> def add(x): retur

XXL-RPC v1.3.1分散式服務框架擴充套件多種路由策略

   Release Notes 1、負載均衡/軟負載:提供豐富的負載均衡策略,包括:輪詢、隨機、LRU、LFU、一致性HASH等; 2、服務發現註冊邏輯優化:支援批量註冊、摘除,升級 xxl-registry 至 v1.0.1; 3、新增jfinal型別示例專案 "x

Util應用程式框架公共操作類(九):Lambda表示式擴充套件

using System; using System.Linq; using System.Linq.Expressions; using System.Reflection; using Util.Lambdas; namespace Util { /// <summary&g

Python中的enumerate函式lambda表示式

Python中的enumerate函式和lambda表示式 Python enumerate()函式 功能:enumerate() 函式用於將一個可遍歷的資料物件(如列表、元組或字串)組合為一個索引序列,同時列出資料和資料下標,一般用在 for 迴圈當中。 語法 enumer

c++ 11 陣列 lambda表示式 語法 / 函式包裝器 基本用法

//倒敘遍歷陣列並輸出  // []裡面的變數可以當做返回值來理解 (int x) 這裡就是每次迭代器的值,也就是陣列的元素的值 void main() { array<int, 5>

python學習中的reduce()函式lambda表示式

reduce()函式和lambda表示式常常能夠言簡意賅的表達我們想要的公式,但是問題也隨之而來:即表示式嚐嚐難以捉摸,看似高深莫測。這裡,我們簡單地探討一下這兩個表示式。如果後續學習中再次遇到這個問題,會繼續補充。同時,也懇請博友指教和補充,大家共同進步。       首

Kotlin高階函式Lambda表示式

高階函式和Lambda表示式 高階函式是接受函式作為引數或者將函式作為返回值的函式。我們可以將C語言中使用回撥函式的函式稱為高階函式。 例如我們有一個數值處理函式processNum(),對於給定Int型資料,依次執行兩個處理過程 proc1 和 proc2

python中reduce函式lambda表示式的學習

最近學習了reduce函式和lambda表示式的組合應用,十分方便,可以代替一些迴圈操作。 例如如下程式碼: list = [1,2,3,4,5] print reduce(lambda x,y:x+y,list) 其中reduce函式是python中的一個二元內建函式

高階函式Lambda表示式

高階函式就是可以接受函式作為引數並返回一個函式的函式。 為高階函式傳遞函式型別引數值可以用如下3種方法 1. 直接定義函式,並傳遞,在函式名前需要加:: 1. 使用Lambda表示式 1. 使用

委託lambda表示式ActionFunc

1、為什麼要用委託 我們為什麼要有委託?任何東西存在即合理,不合理的也會被時間淘汰掉,委託既然存在肯定有存在的必要,我們來看一下什麼時候可以用到委託。 接下來我們有個需求,就是呼叫一個方法,取出1-1000個數字中所有是10的倍數的數字 public static List<int> GetNu

.NET委託事件Lambda表示式

# 委託 ## 委託是什麼? 委託是一種引用型別(其實就是一個類,繼承MulticastDelegate特殊的類。),表示對具有特定引數列表和返回型別的方法的引用。 每個委託提供Invoke方法, BeginInvoke和EndInvoke非同步方法 ## 為什麼需要委託? * 委託可以將方法(即邏輯)

《C算法.第1卷基礎、數據結構、排序搜索(第三版)》pdf

line tom 排序 歸並 簡介 systems sys 計算 ans 下載地址:網盤下載 內容簡介 · · · · · · 《C算法》介紹了當今最重要的算法,共分3卷,《C算法(第1卷):基礎、數據結構、排序和摸索》是第1卷。第1卷分4部

[.net core自我修煉2]SQL、LINQLambda表示式

隨便說說 自己想到什麼就記錄下來了,都是自己遇到的技術點,湊合看吧。在寫後端的時候,最常用的是Lambda表示式,這就記錄一下SQL、LINQ和Lambda的不同之處。 參考資料:https://blog.csdn.net/u010926964/article/details/46240

第021講:函式lambda表示式

測試題 0. 請使用lambda表示式將下邊函式轉變為匿名函式? def fun_A(x, y=3): return x * y lambda x, y=3 : x * y 1. 請將下邊的匿名函式轉變為普通的屌絲函式? lambda x : x if x %

[轉載] python的sorted函式對字典按key排序按value排序

1.sorted函式按key值對字典排序 先來基本介紹一下sorted函式,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse這三個引數。 其中iterable表示可以迭代的物件,例如可以是 dict.items()、

執行緒池lambda表示式

執行緒池1.什麼是執行緒池.一個用來建立和管理執行緒的容器;2.執行緒池的作用.提高執行緒的複用性,降低資源消耗提高執行緒的響應速度,提高執行緒的可管理性3.執行緒的核心思想;執行緒的複用 4.執行緒池的建立ExecutorService pools = Executors.newFixedThreadPoo

18.Java語言執行緒池Lambda表示式

執行緒等待喚醒機制 1.執行緒間的通訊:        一個程式完成某個任務,需要多個執行緒協調,就需要執行緒之間存在“通訊”,比如生產者和消費者,只有生產了才能被消費。當生產者生產完成才能告知消費者可以消費,那麼告知的過程就是執行緒間的通訊。 2.等待與喚醒機制: