糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > DataTable转成实体列表 和 DataRow转成实体类

DataTable转成实体列表 和 DataRow转成实体类

时间:2023-06-12 11:10:53

相关推荐

DataTable转成实体列表 和 DataRow转成实体类

1 #region DataTale转为实体列表 2 /// <summary> 3 /// DataTale转为实体列表 4 /// </summary> 5 /// <typeparam name="T">实体类类型</typeparam> 6 /// <param name="table">DataTable</param> 7 /// <returns>List<T></returns> 8 public List<T> DataTableToModelList<T>(DataTable table) 9 {10 List<T> list = new List<T>();11 T t = default(T);12 PropertyInfo[] propertypes = null;13 string tempName = string.Empty;14 foreach (DataRow row in table.Rows)15 {16 t = Activator.CreateInstance<T>();17 propertypes = t.GetType().GetProperties();18 foreach (PropertyInfo pro in propertypes)19 {20 tempName = pro.Name;21 if (table.Columns.Contains(tempName))22 {23 object value = row[tempName];24 if (value.GetType() == typeof(System.DBNull))25 {26 value = null;27 }28 pro.SetValue(t, value, null);29 }30 }31 list.Add(t);32 }33 return list;34 }35 #endregion36 37 #region DataRow转为实体类 38 /// <summary> 39 /// DataRow转为实体类 40 /// </summary> 41 /// <typeparam name="T">实体类类型</typeparam> 42 /// <param name="row">DataRow</param> 43 /// <returns>T</returns> 44 public T DataRowToModel<T>(DataRow row)45 {46 47 T t = default(T);48 PropertyInfo[] propertypes = null;49 string tempName = string.Empty;50 t = Activator.CreateInstance<T>();51 propertypes = t.GetType().GetProperties();52 foreach (PropertyInfo pro in propertypes)53 {54 tempName = pro.Name;55 if (row.Table.Columns.Contains(tempName))56 {57 object value = row[tempName];58 if (value.GetType() == typeof(System.DBNull))59 {60 value = null;61 }62 pro.SetValue(t, value, null);63 }64 }65 return t;66 }67 #endregion

学习记录

如果觉得《DataTable转成实体列表 和 DataRow转成实体类》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。