• datatable 转list


    public class DtToList<T> where T : new()
    {
    /// <summary>
    /// datatable转list
    /// </summary>
    /// <param name="dt"></param>
    /// <returns></returns>
    public static List<T> ConvertToModel(DataTable dt)
    {

    List<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;
    if (dt.Columns.Contains(tempName))
    {
    if (!pi.CanWrite) continue;
    object value = dr[tempName];
    if (value != DBNull.Value)
    pi.SetValue(t, value, null);
    }
    }
    ts.Add(t);
    }
    return ts;
    }
    }

    datatable转list

    public class DtToList<T> where T : new()
    {
    /// <summary>
    /// datatable转list
    /// </summary>
    /// <param name="dt"></param>
    /// <returns></returns>
    public static List<T> ConvertToModel(DataTable dt)
    {

    List<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;
    if (dt.Columns.Contains(tempName))
    {
    if (!pi.CanWrite) continue;
    object value = dr[tempName];
    if (value != DBNull.Value)
    pi.SetValue(t, value, null);
    }
    }
    ts.Add(t);
    }
    return ts;
    }
    }

    datatable转list

  • 相关阅读:
    获取各种高度宽度方法总结
    关于float、absolute,fixed谁的z-index大!
    一张图轻松搞懂javascript event对象的clientX,offsetX,screenX,pageX区别
    clientHeight的纠结之处
    js和jq的获取元素偏移位置
    js的一些使用
    微信 ios的问题
    jQuery事件之鼠标事件
    遇到的问题
    css
  • 原文地址:https://www.cnblogs.com/qiu18359243869/p/13040674.html
Copyright © 2020-2023  润新知