gpt4 book ai didi

.net - PowerShell,扩展方法和猴子修补

转载 作者:行者123 更新时间:2023-12-04 05:22:16 25 4
gpt4 key购买 nike

是否可以在PowerShell中编写扩展方法?还是在运行时像[string]这样的现有类型之上添加新方法?

最佳答案

我不知道用扩展方法修补类型的方法。但是当然可以通过add-member cmdlet修补对象

PS> $a = "foo"
PS> $a = add-member -in $a -memberType ScriptMethod -name Bar -value { $this + "bar" } -passthru
PS> $a.Foo()
foobar

编辑解释完全可读的PowerShell语法:)

我喜欢PowerShell,但确实确实会时不时地使用隐含语法。
  • “-in”:这是inputObject的缩写,本质上说是为此
  • 添加成员
  • “-memberType”:您可以向运行时对象添加许多不同类型的值,包括方法,注释属性,代码方法等。有关完整列表,请参见“get-help add-member -full”
  • “-passthru”:取出刚刚添加了成员​​的对象,并将其向下插入管道。没有此标志,分配将是分配给$a并清空管道。
  • 分配调用基本上可以确保$a现在具有您添加的
  • 方法

    关于.net - PowerShell,扩展方法和猴子修补,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/840907/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com