datable转化成list
2015-12-20 23:15
253 查看
方式一:
public static List<T> ToList<T>(this DataTable dt)
{
var columnNames = dt.Columns.Cast<DataColumn>()
.Select(c => c.ColumnName)
.ToList();
var properties = typeof(T).GetProperties();
return dt.AsEnumerable().Select(row =>
{
var objT = Activator.CreateInstance<T>();
foreach (var pro in properties)
{
if (columnNames.Contains(pro.Name))
pro.SetValue(objT, row[pro.Name] == DBNull.Value ? string.Empty : row[pro.Name].ToString(), null);
}
return objT;
}).ToList();
}
方式二:
利用newtonsoft.json文件将dataTable转换成json数据格式,然后再转换成list
public static List<T> ToList<T>(this DataTable dt)
{
var columnNames = dt.Columns.Cast<DataColumn>()
.Select(c => c.ColumnName)
.ToList();
var properties = typeof(T).GetProperties();
return dt.AsEnumerable().Select(row =>
{
var objT = Activator.CreateInstance<T>();
foreach (var pro in properties)
{
if (columnNames.Contains(pro.Name))
pro.SetValue(objT, row[pro.Name] == DBNull.Value ? string.Empty : row[pro.Name].ToString(), null);
}
return objT;
}).ToList();
}
方式二:
利用newtonsoft.json文件将dataTable转换成json数据格式,然后再转换成list
相关文章推荐
- MongoDB设置访问权限、设置用户
- 浅读回调函数,闭包
- Cookie
- wpa_supplicant对wep,wpa,wpa2的psk和隐藏ap的scan_ssid扫描配置
- 第三十一天-两个例题
- Paint---MaskFilter(面具)
- LeetCode 299:Bulls and Cows
- C#:使用MD5对用户密码加密与解密
- 数组
- 例题7-1 UVA 725 Division除法
- Java 回调机制
- 链表-单向链表-值传递&地址传递
- mybatis基础与核心类
- 深(浅)复制与retain
- 短信的自动拦截
- 2015第52周日
- 张国祥老师应邀在上海交大讲授流程优化与建设方法课程
- [javase学习笔记]-6.7 封装
- ubuntu从tty终端模式返回到图形桌面
- 源码解析Android中View的layout布局过程