C#DataTable转List公用方法

原创
小哥 3年前 (2022-11-16) 阅读数 8 #大杂烩

话不多说直接上方法,如下:

        /// 
        /// tbale转list
        /// 
        /// 
        /// 
        public static List TableToList(DataTable table) where T : class, new()
        {
            var result = new List();
            var propertys = typeof(T).GetProperties();
            foreach (DataRow dr in table.Rows)
            {
                var item = new T();
                result.Add(item);
                foreach (var pi in propertys)
                {
                    if (!table.Columns.Contains(pi.Name)) continue;
                    var value = dr[pi.Name];
                    if (value is DBNull || value == null) continue;
                    pi.SetValue(item, value);
                }
            }
            return result;
        }

使用方法如下:

public List GetUserInfo()
{
    string sqltxt = "SELECT * FROM User";
    //执行Sql获取数据            
    DataTable dt = DbHelperSQL.Query(sql).Tables[0];
    //这里的User类型替换成你想要的任意类型
    return DalHelp.TableToList(dt);
}
版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除