Powershell:Foreach无法正常工作?

Adi*_*ilZ 2 powershell foreach

所以我的foreach循环有问题,我无法弄清楚自己在做什么错。

以下是我的代码示例:

 $objectarray ##( So this variable contains a list of lists ie name + address) ##

 Foreach ($object in $objectarray.name){


$objectid = $objectarray.Where({$_.name -eq "$object"}).id
$objectaddress = $objectarray.Where({$_.name -eq "$object"}).address

$objectprint = "$objectid" + ": " + "$objectaddress"

$objectprint
return 0

}
Run Code Online (Sandbox Code Playgroud)

现在的问题是$ objectarray中有多个列表,每个列表都有其名称,id,地址等

但是它只打印第一个,而我只有第一个0作为返回值……尽管事实上它们很多

The*_*le1 5

您正在以一种怪异的方式解析对象。您为什么不使用管道使自己更轻松一些?

$ObjectArray | % { "$($_.id): $($_.address)"; 0 }
Run Code Online (Sandbox Code Playgroud)

一切都将以这种方式放入成功/输出管道中并可以捕获(例如,如果放在$var =表达式之前)