http://www.cnblogs.com/binarytree/archive/2008/10/09/1306843.html 綁定Gridview里往往數(shù)據(jù)源是DataSet 或是DataTable 嗯 ,一些類庫(SQLHelper等)里面的方法返回的是DataReader嗯 ,怎么把它們轉成DataSet呢? (1) DataReader轉為DataSet的類: private DataSet DataReaderToDataSet(IDataReader reader) { DataTable table = new DataTable(); int fieldCount = reader.FieldCount; for (int i = 0; i < fieldCount; i++) { table.Columns.Add(reader.GetName(i), reader.GetFieldType(i)); } table.BeginLoadData(); object[] values = new object[fieldCount]; while (reader.Read()) { reader.GetValues(values); table.LoadDataRow(values, true); } table.EndLoadData(); DataSet ds = new DataSet(); ds.Tables.Add(table); return ds; } (2) 注:DataAdapter與DataReader是不同的哦 DataAdapter可以這樣做: DataAdapter.Fill(ds)
(3)
#region DataReader轉換為DataTable
/// </summary> /// <param name="reader"></param> /// <returns></returns> public static DataTable ConvertDataReaderToDataTable(SqlDataReader reader) { try { DataTable objDataTable = new DataTable(); int intFieldCount = reader.FieldCount; for (int intCounter = 0; intCounter < intFieldCount; ++intCounter) { objDataTable.Columns.Add(reader.GetName(intCounter), reader.GetFieldType(intCounter)); } objDataTable.BeginLoadData(); object[] objValues = new object[intFieldCount]; return objDataTable; }
catch (Exception ex) { throw new Exception("轉換出錯!", ex); } } #endregion DataTable緩存數(shù)據(jù)操作:
如何將SqlDataReader綁定到DataGrid
C#中提供的精準測試程序運行時間的類Stopwatch
c#中連接數(shù)據(jù)庫SqlDataAdapter的用法
http://www./blog/article.asp?id=30259 DataReader用法
SqlDataAdapter它的用法有很多,比DataReader強大多了,感興趣的朋友可以查查。DataReader是只讀的,也就是單向的。而適配器呢,它既可以讀又可以寫。
讀取Excel內(nèi)容,導入數(shù)據(jù)庫多張表!
|
|
來自: 青格兒 > 《軟件開發(fā)》