【问题标题】:Change value of a psobject property更改 psobject 属性的值
【发布时间】:2017-05-10 12:50:33
【问题描述】:

我有一个充满 psobjects 的数组。现在我想更改数组中每个对象的一些属性。

我的代码:

[array] $objectArray = $null
foreach ($row in $result) {
    $object = New-Object -TypeName PSObject
    $object | Add-Member -MemberType NoteProperty -Name "Classification" -Value $classification
    $object | Add-Member -MemberType NoteProperty -Name "Status" -Value $status
    $object | Add-Member -MemberType NoteProperty -Name "Priority" -Value $priority
    [array] $objectArray += $object
    Remove-Variable -Name object -ErrorAction SilentlyContinue
}

foreach ($co in $objectArray) {
    $oldStatus = $co.Status
    $oldPriority = $co.Priority
    $oldClassification = $co.Classification

    foreach ($uid in $resultUids.Tables[0]) {
        if ($oldStatus -eq $uid.status_i_d) {
            $co.Status = $uid.status_i_d
            Write-Host "status" $co.Status "uid" $uid.uid
        } elseif ($oldPriority -eq $uid.priority_i_d) {
            Write-Host "priority" $co.Priority "uid" $uid.uid
        } elseif($oldClassification -eq $uid.classification_i_d) {
            Write-Host "classification" $co.Classification "uid" $uid.uid
        }
    }
}

上面的代码有效,但我只是不知道如何更改属性本身的值。我想用$uid.uid替换“分类”、“状态”和“优先级”的值。

【问题讨论】:

    标签: powershell custom-object psobject


    【解决方案1】:

    获取值:

    $co.Classification
    

    设置值:

    $co.Classification = "some value"
    

    【讨论】:

    • 看起来很简单!谢谢你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 1970-01-01
    • 2014-12-17
    • 2018-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多