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转换为对象列表.

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

  3. linq之将IEnumerable<T>类型的集合转换为DataTable类型 (转载)

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

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

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

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

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

  6. [工具类]泛型集合转换为DataTable

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

  7. 泛型集合转换为DataTable

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

  8. 【c#操作office】--OleDbDataAdapter 与OleDbDataReader方式读取excel,并转换为datatable

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

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

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

随机推荐

  1. v-for遍历出的元素上添加click事件,获取对应元素上的属性id值

    <span v-for="(n,nav) in floorList" data-id="{{nav.itemId}}" v-on:click=" ...

  2. 博文Contents<201--到000—>

    ====================================--------------------------------- 前言:博客中的随笔文章.并非都是笔者的原创文章.有些是听别人 ...

  3. Mac下安装ionic和cordova,并生成iOS项目

    为了开发HTML5,除了最新使用React Native等之外,目前首选的为稳定的ionic+Angularjs来开发iOS和android. Ionic(ionicframework一款接近原生的H ...

  4. layer——源码学习

    一.根据源码的学习 发现创建弹窗:使用了一些div来组成 zindex 和 index 是自动生成. zindex 表示生成的层次关系 index 用来表示各个层的id 默认class名 h = [& ...

  5. 启动Tomcat内存溢出解决:java.lang.OutOfMemoryError: PermGen space

    Eclispe 设置Tomcat的时候,双击server的配置,配置如下:

  6. 记录我学github的路程(三)

    2015-12-22 更新 一.Bug分支 1,假设如下场景,你正在dev分支工作,突然接到一个修复代号为101的bug的任务时,dev的东西还没不能提交,但是bug需要马上修复. Git提供了一个s ...

  7. vtkTransform实例 1

    1. 4*4矩阵类vtkMatrix4x4 接口函数:void SetElement(int i, int j, double value),i行.j列的值为value #ifndef INITIAL ...

  8. Android 只开启一个Activity实例

    在一个Activity中,多次调用startActivity()来启动另一个Activity,要想只生成一个Activity实例,方法有两种. 方法一:设置起动模式 一个Activity有四种启动模式 ...

  9. _weak typeof(self) weakSelf = self;

    _weak typeof(self) weakSelf = self; (一)内存管理原则 1.默认strong,可选weak.strong下不管成员变量还是property,每次使用指针指向一个对象 ...

  10. 在sql语句中使用 xml for path 格式化字符串的方法总结

    此方法实现的是将查询表中的某个字段,格式化成  字符串1,字符串2,字符串3...的格式 假设我们现在有两个表 分别是 分组表 grouped和分组成员表 groupuser grouped表有连个字 ...