В PowerShell (v2), как вы добавляете частным членам PSObject?PowerShell - как добавить частных пользователей?
То есть, члены, к которым можно получить доступ только через $this
с помощью ScriptProperty или ScriptMethod.
В PowerShell (v2), как вы добавляете частным членам PSObject?PowerShell - как добавить частных пользователей?
То есть, члены, к которым можно получить доступ только через $this
с помощью ScriptProperty или ScriptMethod.
До введения classes в версии 5.0 система расширенного типа PowerShell (ETS) не имеет той же концепции модификаторов доступа, что и система базового типа (.NET/CTS).
Один из способов намекая на «не использовать это напрямую» для пользователей, будет иметь префикс «внутренних» свойств, как __
(двойной подчеркиванием):
$object = New-Object psobject -Property @{
Public = 4
__private = 9
} |Add-Member -MemberType ScriptProperty -Name Private -Value {
$this.__private
} -SecondValue {
param([int]$newValue)
if(($newValue % 3) -ne 0){
Write-Warning "Only multiples of 3 allowed"
} else {
$this.__private = $newValue
}
} -PassThru
Привет, нашел это: http://powershell.org/forums/topic/can-advanced-functions-be-added-to-custom-objects/ – sodawillow