Add-Memberを使用してPowershell変数に要素を追加しようとしています。NotePropertyを使用して静的プロパティを追加し、ScriptMethodを使用してメソッドを追加することに問題はありません。
$variable = New-Object PSObject
$variable | Add-Member NoteProperty Key "Value"
$variable | Add-Member ScriptMethod DoSomething { // code }
今私はこれで立ち往生しています:
ゲッターとセッターがあり、コードブロックを介してさまざまなことを行うプロパティを追加したいと思います。
同等の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でこれほど簡単なものを見つけることができず、代わりにGetItemとSetItemの2つのスクリプトメソッドを追加することになりました。
PowerShellのPSObjectのメンバーにこのget/let機能を実装するための最良の方法は何でしょうか?
前もって感謝します