/// <summary> ???/// 实体转换辅助类 ???/// </summary> ???public class ModelConvertHelper<T> where ?T : new() ???{ ???????public static IList<T> ConvertToModelList(DataTable dt) ???????{ ???????????// 定义集合 ???????????IList<T> ts = new List<T>(); ???????????// 获得此模型的类型 ???????????Type type = typeof(T); ???????????string tempName = ""; ???????????foreach (DataRow dr in dt.Rows) ???????????{ ???????????????T t = new T(); ???????????????// 获得此模型的公共属性 ???????????????PropertyInfo[] propertys = t.GetType().GetProperties(); ???????????????foreach (PropertyInfo pi in propertys) ???????????????{ ???????????????????tempName = pi.Name; ???????????????????// 检查DataTable是否包含此列 ???????????????????if (dt.Columns.Contains(tempName)) ???????????????????{ ???????????????????????// 判断此属性是否有Setter ???????????????????????if (!pi.CanWrite) continue; ???????????????????????object value = dr[tempName]; ???????????????????????if (value != DBNull.Value) ???????????????????????????pi.SetValue(t, value, null); ???????????????????} ???????????????} ???????????????ts.Add(t); ???????????} ???????????return ts; ???????}
.NET 实体转换辅助类
原文地址:https://www.cnblogs.com/Xanthus/p/9589577.html