/// <summary>
/// 将DataReader 转为 DataTable
/// </summary>
/// <param name="DataReader">DataReader</param>
public
static
DataTable ConvertDataReaderToDataTable(SqlDataReader dataReader)
...
{ DataTable datatable = new DataTable(); DataTable schemaTable = dataReader.GetSchemaTable(); //动态添加列 int i = 0; try ...{ foreach (DataRow myRow in schemaTable.Rows) ...{ DataColumn myDataColumn = new DataColumn(); myDataColumn.DataType = dataReader.GetFieldType(i); //myRow.GetType(); myDataColumn.ColumnName = myRow[0].ToString(); datatable.Columns.Add(myDataColumn); i++; } //添加数据 while(dataReader.Read()) ...{ DataRow myDataRow = datatable.NewRow(); for( i=0;i<schemaTable.Rows.Count;i++) ...{ myDataRow[i] = dataReader[i]; } datatable.Rows.Add(myDataRow); myDataRow = null; } schemaTable = null; dataReader.Close(); return datatable; } catch(Exception ex) ...{ Error.Log(ex.ToString()); throw new Exception("转换出错出错!",ex); } }
转载请注明原文地址: https://ibbs.8miu.com/read-150094.html