糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > Datatable转为ListT / DataRow转为实体类对象

Datatable转为ListT / DataRow转为实体类对象

时间:2019-08-21 14:35:09

相关推荐

Datatable转为ListT / DataRow转为实体类对象

using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Reflection;using System.Text;using System.Threading.Tasks;namespace cfzs.DAL{public class BaseDAL{#region DataTale转为实体列表/// <summary>/// DataTale转为实体列表/// </summary>/// <typeparam name="T">实体类类型</typeparam>/// <param name="table">DataTable</param>/// <returns>List<T></returns>public List<T> DataTableToModelList<T>(DataTable table){List<T> list = new List<T>();T t = default(T);PropertyInfo[] propertypes = null;string tempName = string.Empty;foreach (DataRow row in table.Rows){t = Activator.CreateInstance<T>();propertypes = t.GetType().GetProperties();foreach (PropertyInfo pro in propertypes){tempName = pro.Name;if (table.Columns.Contains(tempName)){object value = row[tempName];if (value.GetType() == typeof(System.DBNull)){value = null;}pro.SetValue(t, value, null);}}list.Add(t);}return list;}#endregion#region DataRow转为实体类/// <summary>/// DataRow转为实体类/// </summary>/// <typeparam name="T">实体类类型</typeparam>/// <param name="row">DataRow</param>/// <returns>T</returns>public T DataRowToModel<T>(DataRow row){T t = default(T);PropertyInfo[] propertypes = null;string tempName = string.Empty;t = Activator.CreateInstance<T>();propertypes = t.GetType().GetProperties();foreach (PropertyInfo pro in propertypes){tempName = pro.Name;if (row.Table.Columns.Contains(tempName)){object value = row[tempName];if (value.GetType() == typeof(System.DBNull)){value = null;}pro.SetValue(t, value, null);}}return t;}#endregion}}

如果觉得《Datatable转为ListT / DataRow转为实体类对象》对你有帮助,请点赞、收藏,并留下你的观点哦!

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