一、直接使用C#操作資料庫的類庫ADO.NET ADO.NET使用Connection對象來連接資料庫,使用Command或DataAdapter 對象來執行SQL語句,並將執行的結果返回給DataReader或DataAdapter,然後 再使用取得的DataReader或者DataAdapter ...
一、直接使用C#操作資料庫的類庫ADO.NET
ADO.NET使用Connection對象來連接資料庫,使用Command或DataAdapter
對象來執行SQL語句,並將執行的結果返回給DataReader或DataAdapter,然後
再使用取得的DataReader或者DataAdapter對象操作數據結果。
二、Entity Framework
Entity Framework 實體框架是微軟的一個ORM框架。是支持面向數據的軟體開
發應用程式。我們一般配合linq和lambda表達式使用。
ORM((Object Relational Mapping對象關係映射)指的是面向對象的對象模型和
關係型資料庫的數據結構之間的互相轉換。(表實體跟表之間的相互轉換)
LINQ查詢:當我們使用linq查詢時,轉到定義會調到Queryable 類, 那麼也就是
說,這個類封裝了linq所有查詢的方法,提供一組用於查詢實現 IQueryable
的數據結構的 靜態方法。
IQueryable和IList一樣,是用於接收一組數據的集合, IQeurable
(IQuerable)不會立即在記憶體里創建持久數據,只有遍歷它(如通過
foreach)、把它轉換成List等情況下才會向記憶體載入數據,它可以實現“延期執
行”,如果當前被載入的實體有關聯實體(associations),此關聯實體可被接下
來的訪問載入。
Ilist-繼承順序如下:
Ilist->ICollection ->IEnumerable
IEnumerable它允許開發人員定義foreach語句功能的實現並支持非泛型方法的簡
單的迭代
同樣的IQueryable也繼承自IEnumerable這一泛型介面
Queryable類提供了擴展的基本查詢方法:Where,Select
select提供方法如下:
public static IQueryable Select(this
IQueryable source, Expression>
selector);
where提供的方法如下:
public static IQueryable Where(this
IQueryable source, Expression>
predicate);
public static IQueryable Where(this
IQueryable source, Expression>
predicate);