程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#基礎知識 >> C# DataTable 轉換為 實體類對象實例

C# DataTable 轉換為 實體類對象實例

編輯:C#基礎知識

代碼如下:

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);

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved