将泛型集合转换为datatable

 /**//// <summary>/// 将泛型集合类转换成DataTable/// </summary>/// <typeparam name="T">集合项类型</typeparam>/// <param name="list">集合</param>/// <returns>数据集(表)</returns>public static DataTable ToDataTable<T>(List<T> list){return ListToDataTable<T>(list);}/// <summary>/// 将泛类型集合List类转换成DataTable/// </summary>/// <param name="list">泛类型集合</param>/// <returns></returns>public static DataTable ListToDataTable<T>(List<T> entitys){//检查实体集合不能为空if (entitys == null || entitys.Count < 1){throw new Exception("需转换的集合为空");}//取出第一个实体的所有Propertie//Type entityType = entitys[0].GetType();PropertyInfo[] entityProperties = entitys[0].GetType().GetProperties();//生成DataTable的structure//生产代码中,应将生成的DataTable结构Cache起来,此处略DataTable dt = new DataTable("temp");for (int i = 0; i < entityProperties.Length; i++){//dt.Columns.Add(entityProperties[i].Name, entityProperties[i].PropertyType);dt.Columns.Add(entityProperties[i].Name);}//将所有entity添加到DataTable中foreach (object entity in entitys){检查所有的的实体都为同一类型//if (entity.GetType() != entityType)//{//    throw new Exception("要转换的集合元素类型不一致");//}object[] entityValues = new object[entityProperties.Length];for (int i = 0; i < entityProperties.Length; i++){entityValues[i] = entityProperties[i].GetValue(entity, null);}dt.Rows.Add(entityValues);}return dt;}

调用

List<实体类> list=new List<实体类>();
DataTable dt=ToDataTable(list);

datatable转泛型集合

//拿到数据
string sql = "select * from T_ExcelIn";
DataTable table= SqlHelper.GetDataTable(sqlcon,CommandType.Text,sql,null);//序列化为字符串
string t = JsonConvert.SerializeObject(table);//反序列化为对象
List<ExcelIn> ex= JsonConvert.DeserializeObject<List<ExcelIn>>(t);

泛型list集合类转换成DataTable、datatable转list相关推荐

  1. IList类转换成DataTable

    /// <summary>/// 将集合类转换成DataTable/// </summary>/// <param name="list">集合 ...

  2. list 转换成datatable

    感谢网上的一位朋友 1 /// <summary> 2 60 /// 将集合类转换成DataTable 3 61 /// </summary> 4 62 /// <par ...

  3. C#将DataTable转换成list的方法

    本文实例讲述了C#将DataTable转换成list及数据分页的方法.分享给大家供大家参考.具体如下: /// <summary> /// 酒店评论列表-分页 /// </summa ...

  4. list lt t gt java_将DataTable转换成Listlt;Tgt;实现思路及示例代码

    前几天在工作中,遇到一个问题:需要将查询出来的DataTable数据源,转换成List的泛型集合(已知T类型).第一反应,我想肯定要用到"泛型"(这不是废话吗?都说了要转换成Lis ...

  5. 简单的反射 把datatable 转换成list对象

    /// <summary>/// 把datatable 转换成list对象/// </summary>/// <typeparam name="T"& ...

  6. C#:CsvReader读取.CSV文件(转换成DataTable)

    原文引用:https://www.codeproject.com/Articles/9258/A-Fast-CSV-Reader using LumenWorks.Framework.IO.Csv;u ...

  7. DataTable转换成IList

    本文转载自http://blog.csdn.net/chentaihan/article/details/6407284 作者:陈太汉     在用C#作开发的时候经常要把DataTable转换成IL ...

  8. 将FeatClass属性表高效率转换成DataTable

    把IFeatureClass\ ITable转换成DataTable,效率高. 方法一 ITable遍历行 1.用IFeatureClass属性查询的方式较慢,这样速度可提高几十倍. 2.避免了hre ...

  9. C# 将DataTable数据源转换成实体类

    1 using System; 2 using System.Collections.Generic; 3 using System.Data; 4 using System.Reflection; ...

  10. badatatable转成json_C# DataTable 转换成JSON数据 三种方法

    在web开发中,我们可能会有这样的需求,为了便于前台的JS的处理,我们需要将查询出的数据源格式比如:List.DataTable转换为Json格式.特别在使用Extjs框架的时候,Ajax异步请求的数 ...

最新文章

  1. 100行代码,使用 Pygame 制作一个贪吃蛇小游戏!
  2. 自定义变量 配置文件_跟我一起学.NetCore之自定义配置源热更新对象绑定
  3. 【AI初识境】被Hinton,DeepMind和斯坦福嫌弃的池化,到底是什么?​​​​​​​
  4. python中的列表分片详解_python列表与元组详解实例
  5. 一个人的成功取决于晚上的8点至10点--经典语录必读
  6. scrapy框架_Python学习之Scrapy框架
  7. CStringArray 字符串数组的使用 以及调试时怎么Dump出其中的内容
  8. android 内存抖动_android内存泄漏怎么破?一招教你搞定!
  9. 例子代码:web.xml
  10. ArcGIS Server 9.3 beta 体验三 -- 简阅 ADF 框架
  11. dreamweaver网页设计作业制作 学生个人网页单页 WEB静态网页作业模板 大学生个人主页博客网页代码 dw个人网页作业成品
  12. 如何在EverEdit编辑器中一键编译运行JAVA并接收键盘输入数据
  13. 【转载】CDS view自学系列
  14. 十二、案例:加利福尼亚房屋价值数据集(多元线性回归) Lasso 岭回归 分箱处理非线性问题 多项式回归
  15. signaturenonce php,php微信公众平台开发--接入微信API
  16. ABP Module-Zero ASP.NET Boilerplate新手问题
  17. Postgresql opm监控工具部署
  18. AD2019 add Mechanical layer
  19. Wi-Fi 安全协议
  20. Flink线上问题: The assigned slot container_xxx was removed

热门文章

  1. Linux-2.6.21的负载均衡
  2. kafka rabbitmq优劣对比_17个方面对比Kafka、RabbitMQ、RocketMQActiveMQ分布式消息队列
  3. spark 通过打散热点key解决数据倾斜问题
  4. python两个列表匹配_Python:检查两个列表之间的字符串是否部分匹配
  5. matlab如何分解矩阵,Matlab中矩阵的分解
  6. php 类的变量,PHP 变量与类
  7. lol峡谷之巅区服务器位置,LOL: 论峡谷之巅和艾欧尼亚哪个区水平更高?
  8. 我与计算机作文450字,第一次上网作文450字(通用5篇)
  9. linux iphone 存储空间,iOS 11 将会自动删除低使用率 App来释放 iPhone 存储空间
  10. 揭开艺术特长考试神秘面纱