New-Object
parametresinin -Property
parametresi argüman olarak bir hashtable alır. Eğer hashtable sipariş verirseniz, özelliklerin belirli bir sırada eklenmiş olabilir. Eğer oluşturma anda özelliklerinin listesini genişletmek gerekirse sadece Hashtable fazla giriş ekleyin:
$ht = [ordered]@{
'Foo' = 23
'Bar' = 'Some value'
'Other Property' = $true
...
}
$o = New-Object -Type PSObject -Property $ht
nesne oluşturulduğu sonra daha fazla özellik eklemek için gerekiyorsa, Add-Member
cmdlet'indeki aracılığıyla yapabilirsiniz :
$o | Add-Member -Name 'New Property' -Type NoteProperty -Value 23
$o | Add-Member -Name 'something' -Type NoteProperty -Value $false
...
veya calculated properties aracılığıyla:
$o = $o | Select-Object *, @{n='New Property';e={23}}, @{n='something';e={$false}}
bence senin ne bir örnek görmek gerektiğini düşünüyorum yapmaya çalışmak. Yeni bir özellik eklemek, karma tabloyu "yeni nesneden" önce oluşturursanız daha kolaydır. '$ props = @ {Kullanıcı =" Jimbo "; Şifre = "1234"}; $ props.NewProperty = "Evet" – Matt
Bunu bir dupe olarak işaretlemek istiyorum: http://stackoverflow.com/questions/17353797/powershell-how-to-initialize-array-of-custom-objects – Matt