仅需一行代码实现DataRow(s)到DataTable的转换

废话不多说了,直接上代码:

复制代码
       public static void Main()
        {
            Run();
        }

        public static void Run()
        {
            List<DataRow> rows = new List<DataRow> { };
            rows.AddRange(CreateTable().Select("ID>1"));

            //以下是关键代码,IEnumerable<DataRow>的一扩展方法
            DataTable newTable = rows.CopyToDataTable(); 

            Console.WriteLine(newTable.Rows.Count);// return 3
        }

        public static DataTable CreateTable()
        {
            DataTable table = new DataTable();

            table.Columns.Add(new DataColumn("ID",typeof(int)));
            table.Columns.Add(new DataColumn("Name", typeof(string)));

            for (int i = 0; i < 5; i++)
            {
                DataRow row = table.NewRow();
                row[0] = i;
                row[1] = "name" + i;
                table.Rows.Add(row);
            }
            return table;
        }
复制代码

CopyToDataTable方法是IEnumerable<DataRow>的一扩展方法,.NET Framework3.5以上都有这个方法,希望能够帮到大家,少写点代码。

posted @   静女  阅读(727)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示