ASP.NET开发:数据库工具ConvertDataReaderToDataTable

    技术2022-05-11  32

    /// <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);   }    }  

    最新回复(0)