zoukankan      html  css  js  c++  java
  • datatable 转 对象

    private static List<T> ConvertToList<T>(DataTable dt)
      where T : new()
      {
       T t1;
       Type type = typeof(T);
       List<T> list = new List<T>();
       PropertyInfo[] propertys = type.GetProperties();
       string name = string.Empty;
       foreach (DataRow dr in dt.Rows)
       {
        T t2 = default(T);
        if (t2 == null)
        {
         t1 = Activator.CreateInstance<T>();
        }
        else
        {
         t2 = default(T);
         t1 = t2;
        }
        T t = t1;
        PropertyInfo[] propertyInfoArray = propertys;
        for (int i = 0; i < (int)propertyInfoArray.Length; i++)
        {
         PropertyInfo pi = propertyInfoArray[i];
         name = pi.Name;
         if (dt.Columns.Contains(name))
         {
          if (!pi.CanWrite)
          {
                                continue;
          }
          object value = SqlHelper.ToCSharpValue(dr[name]);
          if (null != value)
          {
           pi.SetValue(t, value, null);
          }
         }
        
        }
        list.Add(t);
       }
       return list;
      }

  • 相关阅读:
    洛谷 P2958 [USACO09OCT]木瓜的丛林Papaya Jungle
    洛谷 P1400 塔
    10-2 集合之List
    主从数据库
    【单元测试】
    Pen Editor
    appendGrid
    动画
    JavaScript框架设计 第14章 动画引擎
    >>>
  • 原文地址:https://www.cnblogs.com/zhangxiaoshuai/p/6623441.html
Copyright © 2011-2022 走看看