//方法
public static List<T> DataTableToList<T>(DataTable dt)
{
var list = new List<T>();
Type t = typeof(T);
var plist = new List<PropertyInfo>(typeof(T).GetProperties());
foreach (DataRow item in dt.Rows)
{
T s = System.Activator.CreateInstance<T>();
for (int i = 0; i < dt.Columns.Count; i++)
{
PropertyInfo info = plist.Find(p => p.Name == dt.Columns[i].ColumnName);
if (info != null)
{
if (!Convert.IsDBNull(item[i]))
{
info.SetValue(s, item[i], null);
}
}
}
list.Add(s);
}
return list;
}
//调用方法
List<WordbookMaster> list = TopDBContext.DataTableToList<WordbookMaster>(dt);
C# DataTabale转集合
最新推荐文章于 2023-11-29 20:44:30 发布
该代码示例展示了一个公共静态方法,用于将DataTable对象转换为指定类型的List<T>。方法通过反射遍历DataTable的行和列,将数据映射到新创建的对象实例中,然后添加到列表中。在示例中,WordbookMaster类型的列表从DataTable调用此方法进行转换。
摘要由CSDN通过智能技术生成