.Net如何把List转换为DataTable
之前写过一篇把DataTable转换为List的文章,今天又需要把List转化为DataTable,东西不难,直接把代码放出来,有需要的兄弟直接复制粘贴,按参数要求传值即可。
核心代码:
/// <summary>
/// C# List转换成DataTable
/// </summary>
/// <param name="list">list</param>
/// <returns></returns>
public static DataTable ListToDataTable(IList list)
{
DataTable result = new DataTable();
if (list.Count > 0)
{
PropertyInfo[] propertys = list[0].GetType().GetProperties();
foreach (PropertyInfo pi in propertys)
{
//获取类型
Type colType = pi.PropertyType;
//当类型为Nullable<>时
if ((colType.IsGenericType) && (colType.GetGenericTypeDefinition() == typeof(Nullable<>)))
{
colType = colType.GetGenericArguments()[0];
}
result.Columns.Add(pi.Name, colType);
}
for (int i = 0; i < list.Count; i++)
{
ArrayList tempList = new ArrayList();
foreach (PropertyInfo pi in propertys)
{
object obj = pi.GetValue(list[i], null);
tempList.Add(obj);
}
object[] array = tempList.ToArray();
result.LoadDataRow(array, true);
}
}
return result;
}
效果展示:
Emmmm.......... 这个没有啥效果要展示的。
版权声明:
作者:兴兴
文章:.Net如何把List转换为DataTable
链接:https://www.networkcabin.com/notes/2876
文章版权归本站所有,未经授权请勿转载。
作者:兴兴
文章:.Net如何把List转换为DataTable
链接:https://www.networkcabin.com/notes/2876
文章版权归本站所有,未经授权请勿转载。
THE END