我正在尝试使用 Add-Member 将元素添加到 Powershell 变量。我可以使用 NoteProperty 添加静态属性,使用 ScriptMethod 添加方法,如下所示:
$variable = New-Object PSObject
$variable | Add-Member NoteProperty Key "Value"
$variable | Add-Member ScriptMethod DoSomething { // code }
现在我坚持这个:
我想添加一个具有 getter 和 setter 的属性,并通过代码块做很多事情。
VBScript 等效项是这样的:
Class MyClass
Public Property Get Item(name)
// Code to return the value of Item "name"
End Property
Public Property Let Item(name,value)
// Code to set the value of Item "name" to value "value"
End Property
End Class
请注意,我需要编写的代码部分不仅仅是设置/获取值,它们比这更复杂(设置其他相关变量、访问外部数据等)。
我没有在 PowerShell 中找到这么简单的东西,最终添加了 2 个脚本方法,GetItem 和 SetItem。
在 PowerShell 中的 PSObject 成员中实现此 get/let 功能的最佳方法是什么?
提前致谢