从数据表中选择列,并再次将其转换为数据表

本文关键字:数据表 转换 选择 | 更新日期: 2023-09-27 18:19:00

我想在c#中选择一个数据表中的列,这个列也应该在数据表中进行转换。

这就是我想要的。

DataTable(many columns)> select one column>将此列再次转换为DataTable

我已经试过了,但是这给了我完整的DataTable。

DataTable dt = defindedDataTable.Columns[0].Table;

从数据表中选择列,并再次将其转换为数据表

您可以从表中获取DataView,然后使用DataView。ToTable方法。使用此方法,您可以选择所需的一个或多个列:

DataTable dt = defindedDataTable.DefaultView.ToTable(false, defindedDataTable.Columns[0].ColumnName);

这将创建一个新表,插入单个列,并填充包含原始数据的行:

DataTable dt = new DataTable();
DataColumn column = new DataColumn()
{
    ColumnName = defindedDataTable.Columns[0].ColumnName,
    DataType = defindedDataTable.Columns[0].DataType,
    Expression = defindedDataTable.Columns[0].Expression,
    ColumnMapping = defindedDataTable.Columns[0].ColumnMapping
};
dt.Columns.Add(column);
foreach (DataRow row in defindedDataTable.Rows)
{
    DataRow newRow = dt.NewRow();
    newRow[defindedDataTable.Columns[0].ColumnName] = row[defindedDataTable.Columns[0].ColumnName];
    dt.Rows.Add(newRow);
}