如何向现有 DataTable 添加新列并用默认值填充它?

How do I add a new column to an existing DataTable and fill it with a default value?

假设我在 Powershell 中有一个如下所示的数据表:

ID    Value
-----------
1     Foo
2     Bar

我想添加一个默认值为“Normal”的 Status 列。我创建新列:

$MyDataTable.Columns.Add("Status", [String]) | Out-Null
$MyDataTable.Columns["Status"].DefaultValue = "Normal"

$MyDataTable | Format-Table

新列已创建,但未应用默认值。

ID    Value    Status
---------------------
1     Foo
2     Bar

鉴于它是一个现有的数据表,我如何用它的默认值填充新列?

列上设置 DefaultValue,然后 添加到 table:

# Define column with default value
$StatusColumn = [System.Data.DataColumn]::new('Status', [string])
$StatusColumn.DefaultValue = 'Normal'

# Add column definition to table
$MyDataTable.Columns.Add($StatusColumn)