////// DataTable转List public class ModelConvertHelper通用类【实体转换辅助类】/// where T : new(){public static IList ConvertToModel(DataTable dt){// 定义集合IList ts = new List ();// 获得此模型的类型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)){// 判断此属性是否有Setif (!pi.CanWrite) continue;object value = dr[tempName];if (value != DBNull.Value)pi.SetValue(t, value, null);}}ts.Add(t);}return ts;}}
// 把DataTable转换为IList<View_TableListModel>
IList<View_TableListModel> vlistTable = ModelConvertHelper<View_TableListModel>.ConvertToModel(dtTable);