将DataReader转换为DataTable

时间:2022-09-07 18:42:48
  1. public static DataTable ConvertDataReaderToDataTable(SqlDataReader dataReader)
  2. {
  3. ///定义DataTable
  4. DataTable datatable = new DataTable();
  5. try
  6. {    ///动态添加表的数据列
  7. for (int i = 0; i < dataReader.FieldCount; i++)
  8. {
  9. DataColumn myDataColumn = new DataColumn();
  10. myDataColumn.DataType = dataReader.GetFieldType(i);
  11. myDataColumn.ColumnName = dataReader.GetName(i);
  12. datatable.Columns.Add(myDataColumn);
  13. }
  14. ///添加表的数据
  15. while (dataReader.Read())
  16. {
  17. DataRow myDataRow = datatable.NewRow();
  18. for (int i = 0; i < dataReader.FieldCount; i++)
  19. {
  20. myDataRow[i] = dataReader[i].ToString();
  21. }
  22. datatable.Rows.Add(myDataRow);
  23. myDataRow = null;
  24. }
  25. ///关闭数据读取器
  26. dataReader.Close();
  27. return datatable;
  28. }
  29. catch (Exception ex)
  30. {
  31. ///抛出类型转换错误
  32. //SystemError.CreateErrorLog(ex.Message);
  33. throw new Exception(ex.Message, ex);
  34. }
  35. }

将DataReader转换为DataTable的更多相关文章

  1. 通过表达式树把datareader和datatable转换为实体

    续上两篇文章,使用emit构造dynamic method,把 datareader转换为实体,以避免直接使用反射来实现带来的性能损失.代码看似没有纰漏,但是实际上我在framwork4下运行时,调用 ...

  2. 对象列表转换为DataTable或DataTable转换为对象列表&period;

    /**********************************************************************************/ // 说明: 数据转换工具. ...

  3. linq之将IEnumerable&lt&semi;T&gt&semi;类型的集合转换为DataTable类型 (转载)

    在考虑将表格数据导出成excel的时候,网上搜的时候找到一个特别合适的公共方法,可以将query查询出来的集合转换为datatable 需引用using System.Reflection; publ ...

  4. Json 字符串 转换为 DataTable数据集合

    /// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson&quot ...

  5. c&num;常用的Datable转换为json,以及json转换为DataTable操作方法

    #region  DataTable 转换为Json字符串实例方法 /// <summary> /// GetClassTypeJosn 的摘要说明 /// </summary&gt ...

  6. &lbrack;工具类&rsqb;泛型集合转换为DataTable

    写在前面 在实际项目中,用到了将集合转换为DataTable,就试着封装了一个方法,记录一下. 代码 using System; using System.Collections.Generic; u ...

  7. 泛型集合转换为DataTable

    在做项目中,遇到了将集合转换为DataTable的使用,在网上看了资料,在这里记录下来,分享. using System; using System.Collections.Generic; usin ...

  8. 【c&num;操作office】--OleDbDataAdapter 与OleDbDataReader方式读取excel&comma;并转换为datatable

    OleDbDataAdapter方式: /// <summary> /// 读取excel的表格放到DataTable中 ---OleDbDataAdapter /// </summ ...

  9. C&num;基础知识之泛型集合转换为DataTable

    在做项目中,遇到了将集合转换为DataTable的使用,在网上看了资料,在这里记录下来,分享. using System; using System.Collections.Generic; usin ...

随机推荐

  1. C&num;循环语句练习2

    1.羽毛球拍15元,球3元,水2元,有200元,每一种至少买一件,问有几种买法? 2.洗发水15元,牙刷5元,香皂2元,有150元,每一种至少买一件,问有几种买法? 3.用100元钱买100只鸡,公鸡 ...

  2. ajax入门详解

    l 一个实例 在开始正式讲解 Ajax之前,首先让我们先来看看Google Map使用Ajax改善其产品设计的效果. 1. 在浏览器地址栏中输入http://maps.google.com打开Goog ...

  3. Win7玩游戏偶尔自动跳转到桌面的解决办法&lbrack;转&rsqb;

    新装的win7旗舰版SP1,怎么玩wow (魔兽世界.*飞车.全屏游戏.按键精灵.挂机)总是过一会就自己返回桌面了.刚开始以为是显卡的毛病,更新了驱动还是一样(在这之前,排除病毒,其他驱动问题).因 ...

  4. 【转载】经典漫画讲解HDFS原理

    分布式文件系统比较出名的有HDFS  和 GFS,其中HDFS比较简单一点.本文是一篇描述非常简洁易懂的漫画形式讲解HDFS的原理.比一般PPT要通俗易懂很多.不难得的学习资料. 1.三个部分: 客户 ...

  5. iOS开发寻找最近公共view

    新技能 #pragma mark --寻找最近公共view + (NSArray *)superViews:(UIView *)view{ if (view==nil) { return @[]; } ...

  6. 对一个结果集(List)进行手动分页

    对一个链表List,进行手动分页,核心代码就是pagin函数: import lombok.extern.slf4j.Slf4j; import org.junit.Before; import or ...

  7. SVG&period;js Marker标记和自定义标签

    一.SVG.Marker 添加标记 SVG.Marker 标记可以被添加到一个线,折线的各点,多边形和路径.有三种类型的标记:开始,中间和结束.如果开始表示第一个点,则结束中间的最后一点和中间点. v ...

  8. 原来Java中有两个ArrayList

    首先给出一段代码: public class AslistMethod { public static void main(String[] args) { String sentence = &qu ...

  9. Javascript屏蔽鼠标右键-超简单,不过还是记录一下

    Javascript屏蔽鼠标右键,其实作用也不大,也许是为了防止别人查看源代码,其实想查看源代码有多种途径,未必需要通过鼠标右键.不过当我们自定义鼠标右键弹出菜单时,也许需要这些. 下面是源码: 1 ...

  10. mysql-group-replication 测试环境的搭建与排错

    mysql-group-replication 是由mysql-5.7.17这个版本提供的强一致的高可用集群解决方案 1.环境规划 主机ip 主机名 172.16.192.201 balm001 17 ...