DataTable轉換list泛型集合(反射)
一個簡單的擴充套件,用於將DataTable轉換成List<T>型別的泛型集合:
1 /// <summary> 2 /// DataTable轉換list泛型(反射) 3 /// </summary> 4 /// <typeparam name="T">目標實體</typeparam> 5 /// <param name="dt">源資料表</param> 6 /// <returns>List型別的泛型集合</returns> 7 public static List<T> ToList<T>(this DataTable dt) 8 { 9 var list = new List<T>(); 10 Type t = typeof (T); 11 var plist = new List<PropertyInfo>(typeof(T).GetProperties()); 12 foreach (DataRow item in dt.Rows) 13 { 14 T s = Activator.CreateInstance<T>(); 15 for (int i = 0; i < dt.Columns.Count; i++) 16 { 17 PropertyInfo info = plist.Find(p => p.Name == dt.Columns[i].ColumnName); 18 if (info != null) 19 { 20 if (!Convert.IsDBNull(item[i])) 21 { 22 info.SetValue(s, item[i], null); 23 } 24 } 25 } 26 list.Add(s); 27 } 28 return list; 29 }
相關文章
- 泛型集合 list泛型
- 泛型轉DataTable方法泛型
- C#中將DataTable型別轉化為泛型集合C#型別泛型
- DataTable與List相互轉換
- Java反射給泛型集合賦值Java反射泛型賦值
- DataSet與泛型集合間的互相轉換泛型
- Java 中的泛型 集合(List,Set) MapJava泛型
- 8.集合、泛型、列舉、註解、反射泛型反射
- c# DataTable轉ListC#
- DataTable 轉為 List<dynamic>
- 陣列轉換成List集合陣列
- 擴充套件方法(1) DataTable 和List 相互轉換套件
- asp.net中DataTable和List之間相互轉換ASP.NET
- 容器,型別轉換。List。型別
- 泛型集合 Queue泛型
- List型別集合型別
- Java:Collection集合、泛型Java泛型
- Java集合和泛型Java泛型
- 集合框架-引入泛型框架泛型
- c#泛型集合C#泛型
- 集合框架-通過Object轉型問題引入泛型框架Object泛型
- Java函式泛型List引數,操作泛型元素Java函式泛型
- Java反射—方法的反射、深入瞭解泛型Java反射泛型
- 反射-通過反射越過泛型檢查反射泛型
- 【Java反射】Java 泛型基礎Java反射泛型
- 【譯】9. Java反射——泛型Java反射泛型
- 07.集合和泛型泛型
- C# 泛型集合SortedListC#泛型
- C#泛型類之LISTC#泛型
- List集合轉JSONObjectJSONObject
- 泛型方法、初始集合和集合的遍歷泛型
- Java 集合列舉泛型(一)Java泛型
- ajax 提交陣列 泛型集合陣列泛型
- 【ITOO】--陣列、集合、泛型解析陣列泛型
- Day22 集合,ArrayList,泛型泛型
- fastjson json字串和JavaBean、List、Map及複雜集合型別的相互轉換。ASTJSON字串JavaBean型別
- List,DataTable實現行轉列的通用方案
- 【型別轉換】使用c#實現簡易的型別轉換(Emit,Expression,反射)型別C#MITExpress反射