使用dbdatareader資料來源
using system.data.sqlclient;
var conn = new sqlconnection("server=***;database=northwind;uid=***;pwd=***");
var ctx = new datacontext(conn);
var cmd = new sqlcommand("select * from customers where customerid like 'a%'", conn);
conn.open();
var reader = cmd.executereader();
gridview1.datasource = ctx.translate(reader);
gridview1.databind();
conn.close();
你同樣可以選擇使用datareader獲取資料,增加了靈活性的同時也增加了效能。
看到這裡,你可能會覺得手工定義和資料庫中表對應的實體類很麻煩,不用擔心,vs2008提供了自動生成實體類以及關係的工具,工具的使用將在以後講解。今天就講到這裡,和datacontext相關的事務、載入選項、併發選項以及關係實體等高階內容也將在以後講解。
示例資料庫
欄位名字段型別
允許空欄位說明id
uniqueidentifier
表主鍵字段
username
varchar(50)
posttime
datetime
message
varchar(400) √
isreplied
bitreply
varchar(400) √
在資料庫中建立乙個名為guestbook的資料庫,在裡面建立乙個tbguestbook的表,結構如上表。
生成實體類
那麼,我們就在伺服器資源管理器中建立乙個指向guestbook資料庫的資料連線,然後把tbguestbook表拖動到guestbook.dbml的設計檢視上,按ctrl+s儲存。開啟guestbook.designer.cs可以發現系統自動建立了guestbook資料庫中tbguestbook表的對映,如下圖:
linq中文教程 二
what s linq?language integrated query 是也。說得再明白一些,這是程式語言的一種新特性,能夠將資料查詢語句整合到程式語言中。目前,linq 支援的語言有 c 和vb。為啥會有 linq 主要還是因為現在的資料格式越來越多,資料庫 xml 陣列 雜湊表 每一種都有自...
linq中文教程 五
自動屬性 public class person public int age public person person p new person p.username aa console.writeline p.username 意義不是很大,純粹解決機械勞動。編譯器自動為你生成get set操...
linq中文教程 七
datacontext datacontext型別 資料上下文 是system.data.linq命名空間下的重要型別,用於把查詢句法翻譯成sql語句,以及把資料從資料庫返回給呼叫方和把實體的修改寫入資料庫。datacontext提供了以下一些使用的功能 以日誌形式記錄datacontext生成的s...