下面是一个使用ADO.NET将DataTable中的行批量复制到另一个DataTable的示例代码:
using System;
using System.Data;
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
// 创建源DataTable并添加行
DataTable sourceTable = new DataTable();
sourceTable.Columns.Add("ID", typeof(int));
sourceTable.Columns.Add("Name", typeof(string));
sourceTable.Rows.Add(1, "John");
sourceTable.Rows.Add(2, "Jane");
sourceTable.Rows.Add(3, "Bob");
// 创建目标DataTable
DataTable targetTable = sourceTable.Clone();
// 使用ImportRow方法将源DataTable的行复制到目标DataTable
foreach (DataRow row in sourceTable.Rows)
{
targetTable.ImportRow(row);
}
// 验证复制结果
Console.WriteLine("目标DataTable中的行:");
foreach (DataRow row in targetTable.Rows)
{
Console.WriteLine($"ID: {row["ID"]}, Name: {row["Name"]}");
}
}
}
}
这个示例代码中,我们首先创建了一个源DataTable,并添加了几行数据。然后,我们使用Clone
方法创建了一个与源DataTable相同结构的目标DataTable。
接下来,我们使用ImportRow
方法将源DataTable的行逐个复制到目标DataTable中。
最后,我们验证复制结果,通过遍历目标DataTable中的行,输出每行的数据。
注意:在实际开发中,我们可能需要根据实际需求进行修改和优化,例如使用BeginLoadData
和EndLoadData
方法来提高性能。