c# 隐含类型var 转换为 DataTable

/// <summary>

/// 隐含类型var 转换为 DataTable

/// </summary>

/// <typeparam name="T"></typeparam>

/// <param name="array"></param>

/// <returns></returns>

public static DataTable CopyToDataTable<T>(this IEnumerable<T> array)

{

var ret = new DataTable();

foreach (PropertyDescriptor dp in TypeDescriptor.GetProperties(typeof(T)))

ret.Columns.Add(dp.Name, dp.PropertyType);

foreach (T item in array)

{

var Row = ret.NewRow();

foreach (PropertyDescriptor dp in TypeDescriptor.GetProperties(typeof(T)))

Row[dp.Name] = dp.GetValue(item);

ret.Rows.Add(Row);

}

return ret;

}

}

相关推荐
冷雨夜中漫步20 分钟前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
m0_736919102 小时前
C++代码风格检查工具
开发语言·c++·算法
2501_944934732 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
黎雁·泠崖3 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_763472464 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
TechWJ4 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
lly2024065 小时前
C++ 文件和流
开发语言
m0_706653235 小时前
分布式系统安全通信
开发语言·c++·算法
寻寻觅觅☆5 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
lightqjx5 小时前
【C++】unordered系列的封装
开发语言·c++·stl·unordered系列