Linq查詢操作之Where篩選

2021-09-09 01:50:15 字數 1959 閱讀 5601

篩選操作where能夠處理邏輯運算子組成的邏輯表示式。比如邏輯「與」,邏輯「或」,並從資料來源中篩選資料,它和where子句的功能非常相似。enumerable類的where()原型如下:

1public

static ienumerablewhere(this ienumerablesource, funcbool> predicate);

其中source表示要篩選的資料來源,predicate表示篩選函式,該函式用來指定元素滿足的條件。

下面的例項**wherefilterquery()函式演示了where操作篩選的方法。

具體的演示資料我們還是用前面講解的userbaseinfo類。

1

public

class

userbaseinfo215

16public userbaseinfo(int id, string username, string

email)

1722

23public userbaseinfo(int id, string username, string email, int

roleid)

24 : this

(id, username, email)

2528

29public userbaseinfo(int id, string username, string email, int roleid, listaliasname)

30 : this

(id, username, email, roleid)

3134

35public listaliasname

3638

set 39}

4041

public

intid

4244

set4548}

4950

public

string

email

5153

set 54}

5556

public

introleid

5759

set 60}

6162

public

string

username

6365

set 66}

67 }

首先我們建立乙個資料型別為list型別的物件users,包含9個元素。然後我們用linq查詢出id的值小於3的元素。在這裡我們用2中查詢方式,一種就是前面講過的查詢表示式,一種就是現在講的查詢操作。

1

private

void

wherefilterquery()212

13//

查詢表示式

14var result1 = from u in

users

15where u.id < 3

16select

u;17

//查詢操作

18var result2 = users.where(u=>u.id<3

);19

20 response.write("

------查詢表示式-----------");

21foreach (var u in

result1)

2227

28 response.write("

------查詢操作-----------");

29foreach (var u in

result2)

3035 }

我們用兩種方式,我們來看看最終結果:

可以看到查詢的結果是一樣的。

LINQ 之 基本 LINQ 查詢操作

在 linq 查詢中,第一步是指定資料來源。像在大多數程式語言中一樣,必須先宣告變數,才能使用它。在 linq 查詢中,最先使用from子句的目的是引入資料來源和範圍變數。queryallcustomers 是 ienumerable型別 資料來源 customers 和範圍變數 cust var ...

Linq查詢操作之投影操作

投影操作,乍一看不知道在說啥。那麼什麼是投影操作呢?其實就是select操作,名字起的怪怪的。和linq查詢表示式中的select操作是一樣的。它能夠選擇資料來源中的元素,並指定元素的表現形式。投影操作包括以下2種操作 1 select操作,將資料來源中的元素投影到新的序列中,並指定元素的型別和表現...

Linq查詢操作之投影操作

投影操作,乍一看不知道在說啥。那麼什麼是投影操作呢?其實就是select操作,名字起的怪怪的。和linq查詢表示式中的select操作是一樣的。它能夠選擇資料來源中的元素,並指定元素的表現形式。投影操作包括以下2種操作 1 select操作,將資料來源中的元素投影到新的序列中,並指定元素的型別和表現...