c# 在datatable1中将A列与B列合并到新建的C列
时间: 2024-10-19 10:08:06 浏览: 17
在C#中,你可以通过创建一个新的DataTable并将现有DataTable中的数据复制到新表中,来实现A列(假设为`ColumnA`)和B列(`ColumnB`)的合并。这里有一个示例,说明如何在新的DataTable `dtNew` 中添加一个名为`C`的新列,其值由`ColumnA`和`ColumnB`相加:
```csharp
// 创建一个新的DataTable
DataTable dtNew = new DataTable();
// 添加相同的列结构,包括A和B列到新表
dtNew.Columns.AddRange(dt1.Columns.Cast<DataColumn>().ToArray());
// 假设你已经有了A和B列的名称,例如 "ColumnA" 和 "ColumnB"
string columnAName = "ColumnA";
string columnBName = "ColumnB";
// 新建一个C列
DataColumn columnC = new DataColumn("C", typeof(int)); // 或者根据实际数据类型设置
dtNew.Columns.Add(columnC);
// 遍历原DataTable1,计算A和B的和并添加到新列
foreach (DataRow row in dt1.Rows)
{
int sum = Convert.ToInt32(row[columnAName]) + Convert.ToInt32(row[columnBName]);
object[] newRow = new object[dtNew.Columns.Count];
newRow[columnAName] = row[columnAName];
newRow[columnBName] = row[columnBName];
newRow[columnC] = sum;
dtNew.Rows.Add(newRow);
}
// 注意:这个示例假设ColumnA和ColumnB都是数值类型,如果不是,转换时可能需要处理异常
```
阅读全文