1
給定一個嵌套的PowerShell自定義對象是這樣的:如何引用父在PowerShell腳本屬性
$O = [PSCustomObject]@{
ParentValue = 100
ChildValueArray = @(
[PSCustomObject]@{ Name = 'First'; Value = 1 },
[PSCustomObject]@{ Name = 'Second'; Value = 2 }
)}
我想一個腳本屬性添加到每個引用值「ParentValue「ChildArray」對象「在封閉的對象中。從概念上說,我想要做以下事情:
$O.ChildValueArray | Add-Member -MemberType ScriptProperty -Name Diff -Value { $this.Value + $parent.ParentValue }
但是,沒有$的父母相當於$,我可以找到。
有沒有辦法來實現這一行爲,以便結果:
$O.ChildValueArray | Format-Table -AutoSize
是:
Name Value Diff
---- ----- ----
First 1 101
Second 2 102
相反的電流值:
Name Value Diff
---- ----- ----
First 1 1
Second 2 2
我懷疑這由於這裏列出的原因是不可能的:
How to reference parent in inline creation of objects?
爲什麼你不能簡單地使用'$ O.ParentValue'? –
我可以!這是我完全的腦凍結。問題的原始形式讓我在父母之前定義了孩子 - 這意味着如果沒有在孩子上使用添加成員來引用父母,我就不能這樣做。應該有一個「杜!」徽章 - 你得到它的問題一個錯誤的問題!感謝您指出了這一點! – user1383092
不客氣。 ;) –