我的cmdlet get-objects返回一个MyObject包含公共属性的数组:
public class MyObject{
public string testString = "test";
}
Run Code Online (Sandbox Code Playgroud)
我希望没有编程技能的用户能够testString从数组的所有对象修改公共属性(如本示例中所示).然后将修改后的数组提供给我的第二个cmdlet,该cmdlet将对象保存到数据库中.
这意味着"编辑代码"的语法必须尽可能简单.
它应该看起来像这样:
> get-objects | foreach{$_.testString = "newValue"} | set-objects
Run Code Online (Sandbox Code Playgroud)
我知道这是不可能的,因为$ _只返回数组中元素的副本.
因此,您需要在循环中通过索引访问元素,然后修改属性.对于不熟悉编程的人来说,这真的很快变得非常复杂.
这样做有"用户友好"的内置方式吗?它不应该比简单更"复杂"foreach {property = value}