我是初學者。ASP.net DataReader執行技巧
聽說DataReader的工作向前只只讀方式,並一次將 讀取單個record.Suppose時,我怎麼也GridView的填充所有記錄執行下面的代碼
SqlDataReader reader=cmd.ExecuteReader();
gv1.DataSource=reader;
gv.DataBind();
?由於讀者能夠讀取每行一行,我認爲只有最後一行可用於GridView顯示。
我是初學者。ASP.net DataReader執行技巧
聽說DataReader的工作向前只只讀方式,並一次將 讀取單個record.Suppose時,我怎麼也GridView的填充所有記錄執行下面的代碼
SqlDataReader reader=cmd.ExecuteReader();
gv1.DataSource=reader;
gv.DataBind();
?由於讀者能夠讀取每行一行,我認爲只有最後一行可用於GridView顯示。
BindData
將從閱讀器中讀取數據,一次一個記錄,隨時填充GridView。 GridView沒有通過閱讀器維護與服務器的連接。
在內部,DataReader的Read()方法在DataBinding期間調用,直到它返回false(表示沒有更多記錄)。當每個記錄被提取時,它被添加到要呈現的html中。
根據MSDN:
GridView控件可以被綁定到一個 數據源控制(如 的SqlDataSource,ObjectDataSource的,和 等),以及任何數據源 那實現了 System.Collections.IEnumerable 接口(如 System.Data.DataView, System.Collections.ArrayList或 System.Collections.Hashtable)。使用下列方法之一 到 GridView控件綁定到適當的 數據源類型:
正如你可以看到你的SqlDataReader的參考只設置到GridView.DataSource。當您調用GridView.DataBind方法時,GridView在(reader.Read())中通過讀取並填充相應的數據。