DataTable转实体
2015-06-18 10:26
197 查看
public class ModelConvertHelper<T> where T : new() { public static IList<T> ConvertToModelList(DataTable dt) { // 定义集合 IList<T> ts = new List<T>(); // 获得此模型的类型 Type type = typeof(T); string tempName = ""; foreach (DataRow dr in dt.Rows) { T t = new T(); // 获得此模型的公共属性 PropertyInfo[] propertys = t.GetType().GetProperties(); foreach (PropertyInfo pi in propertys) { tempName = pi.Name; // 检查DataTable是否包含此列 if (dt.Columns.Contains(tempName)) { // 判断此属性是否有Setter if (!pi.CanWrite) continue; object value = dr[tempName]; if (value != DBNull.Value) pi.SetValue(t, value, null); } } ts.Add(t); } return ts; } } }
相关文章推荐
- 鼠标移上去下拉框出现移走或者点击之后 下拉框消失的效果。
- 读后感
- Android开发第二阶段(6)
- 关于客户端接口分页sql语句
- DevExpress TreeList使用
- oracle 数据库表的列名修改
- 支付功能实现的大致思路
- MFC 设置按钮背景,点击后切换背景(不是按下时和松开时切换)
- 二叉树的最小深度——广度优先搜索
- matlab中size()函数的用法
- Hibernate抓取策略以及如何避免cannot simultaneously fetch multiple bags异常
- 循环广告位组件的实现
- 股权成熟机制
- DevExpress TreeList使用教程之绑定多级树
- 黑马程序员----Java基础之IO包中其它类
- Android开发第二阶段(5)
- Java生成缩略图之Thumbnailator
- iOS 静态代码扫描
- C++12.1.4 类的前向声明、不完全类型类
- linux2.4中netfilter_nat_alg机制分析--以FTP流程为例,分析NAT和ALG