欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C# DataTable 转换为 实体类对象实例

程序员文章站 2023-12-17 14:54:34
复制代码 代码如下:public class user {         public int id...

复制代码 代码如下:

public class user
{
        public int id { get; set; }
        public string name { get; set; }
}

//对应数据库表:
//user
//字段:id、name    

那么你也许需要编写将datatable 转换为实体对象的方法,便利datatable.rows 获得并填充。。

下面是我写的一个通用方法,分享+记录,便于日后直接copy ~

复制代码 代码如下:

private static list<t> tabletoentity<t>(datatable dt) where t : class,new()
{
    type type = typeof(t);
    list<t> list = new list<t>();

    foreach (datarow row in dt.rows)
    {
        propertyinfo[] parray = type.getproperties();
        t entity = new t();
        foreach (propertyinfo p in parray)
        {
            if (row[p.name] is int64)
            {
                p.setvalue(entity, convert.toint32(row[p.name]), null);
                continue;
            }
            p.setvalue(entity, row[p.name], null);
        }
        list.add(entity);
    }
    return list;
}
  

// 调用:

list<user> userlist = tabletoentity<user>(yourdatatable);

上一篇:

下一篇: