LINQ To Objects 的資料來源

2021-08-22 15:42:19 字數 1921 閱讀 4146

linq to objects的資料來源

/黃忠成

linq to objects

的架構中,只要實作了

ienumerable

介面的物件,皆可做為

linq to objects

的資料來源,那具體有那些呢?見下表。 型別

說明

ienumerable

系列

1、具型陣列,如

string

、int

、datetime

等等。

2、實作了

ienumerable

之物件,如

list

、dictionary

、collection

.net framework 3.5資料庫開發聖典一書中,第三章主要使用此類來演示。

ienumerable

介面

1、實作了ienumerable介面的物件,雖然廣義上而言,也能做為linq to objects的資料來源,但需透過cast、oftype函式轉換為ienumerable的過程,

linq

與 ienumerable 介面

datareader

、arraylist等類物件均可循此途徑來與linq to objects結合。

.net framework 3.5資料庫開發聖典一書中,這種應用不多,隱藏在castoftype一節。

iqueryable

介面

就層次上而言,

iqueryable

介面也屬於

linq to objects

所支援的資料來源,因為其是

ienumerable

的子代介面,當編譯器發現資料來源為實作

iqueryable

介面之物件時,會採取

expression tree

方式來處理

linq

查詢式。

這是為了將

linq

查詢式轉譯成乙個個

expression node

,交由特定機制,將

expression node

轉譯為其它特定系統所能接受的指令。

例如: 1、

linq to sql

、linq to entities

將expression node

轉為

sql

指令。 2、

linq to active directory

將expression node

轉為active directory api

的操作。

3、linq to excel

將expression node

轉為excel com

呼叫。

.net framework 3.5資料庫開發聖典一書中,第三章末尾,對這種應用及實作有相當多的著墨。

LINQ to Objects系列 4 表示式樹

為了進一步加深對lambda表示式的理解,我們需要掌握乙個新的知識,lambda表示式樹,可能聽名字看起來很高深和難以理解,但實際上理解起來並沒有想象中那麼難,這篇文章我想分以下幾點進行總結。1,表示式樹的語法 2,將 轉換到資料 3,探索表示式樹 4,將資料轉換到 5,iqueryable和表示式...

A 數的劃分

a 數的劃分 將整數n 分成 k份,且每份不能為空,任意兩個方案不相同 不考慮順序 例如 n 7,k 3,下面三種分法被認為是相同的。1,1,5 1,5,1 5,1,1 問有多少種不同的分法。輸入格式 第一行有兩個整數 n,k 6sample input 7 3 sample output 解題思路...

具有最大逆置數的數

題目描述 給定n個數,找出在這n個數中,具有最大逆置數的那個數。逆置數 指符號不變,但各個數字是逆置的。如整數256的逆置數是652,整數 3780的逆置數是 873。最大逆置數 指各數對應的逆置數的最大值。求具有最大逆置數的數 各數在比大小時,不是按原數比,而是按其逆置數進行比較。輸入先輸入乙個正...