Bud*_*Joe 8 .net powershell extension-methods monkeypatching
是否可以在PowerShell中编写扩展方法?或者在运行时直播现有类型的新方法,如[string] live?
我不知道用扩展方法修补类型的方法.但是通过add-member cmdlet修补对象当然是可能的
PS> $a = "foo"
PS> $a = add-member -in $a -memberType ScriptMethod -name Bar -value { $this + "bar" } -passthru
PS> $a.Foo()
foobar
Run Code Online (Sandbox Code Playgroud)
编辑解释完全和完全可读的PowerShell语法:)
我喜欢PowerShell,但它确实会不时提出神秘的语法.
$a
.$a
现在具有您添加的方法如果您想要添加到特定类型的方法或属性,则可以通过PowerShell的自适应类型系统创建自定义类型扩展.
自定义类型扩展是一个XML文件,它描述类型的属性或脚本方法,然后通过Update-TypeData cmdlet将其加载到PowerShell会话中.
可以在PowerShell团队博客上找到一个很好的例子- 仇恨添加成员?(PowerShell的自适应型系统救援)
归档时间: |
|
查看次数: |
1016 次 |
最近记录: |