关闭

Datatable转换成List实体对象列表

标签: datatable转换List
1396人阅读 评论(0) 收藏 举报
分类:


        /// <summary>
        /// 将Datatable转换为List集合
        /// </summary>
        /// <typeparam name="T">类型参数</typeparam>
        /// <param name="dt">datatable表</param>
        /// <returns></returns>
        public static List<T> DataTableToList<T>(DataTable dt)
        {
            var list = new List<T>();
            Type t = typeof(T);
            var plist = new List<PropertyInfo>(typeof(T).GetProperties());

            foreach (DataRow item in dt.Rows)
            {
                T s = System.Activator.CreateInstance<T>();
                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    PropertyInfo info = plist.Find(p => p.Name == dt.Columns[i].ColumnName);
                    if (info != null)
                    {
                        if (!Convert.IsDBNull(item[i]))
                        {
                            info.SetValue(s, item[i], null);
                        }
                    }
                }
                list.Add(s);
            }
            return list;
        }

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:427292次
    • 积分:3396
    • 等级:
    • 排名:第10257名
    • 原创:93篇
    • 转载:41篇
    • 译文:0篇
    • 评论:29条
    最新评论