【发布时间】:2020-05-24 11:55:44
【问题描述】:
我可以用我的类的实例填充Generic.List,每个实例在 ID 属性中都有一个唯一值,如下所示。
$packages = [System.Collections.Generic.List[object]]::New()
class Package {
# Properties
[String]$ID
# Constructor
Package ([String]$id) {
$this.ID = $id
}
}
foreach ($i in 65..90) {
$packages.Add([Package]::New("$([char]$i)"))
}
现在我想按照$packages.IndexOf('C') 获取特定项目的索引。但是在 C# 中这样做似乎需要使用 lambda,而 PowerShell 似乎不支持。我宁愿不必初始化我自己的索引变量并遍历列表中的所有项目,检查它们的 ID 并沿途增加索引。但是,也许这就是使用仅带有本机 PS cmdlet 的 PowerShell 和仅使用 C# 之间的灰色地带,在这两个极端中您都错过了糖,而必须自己制作?
【问题讨论】:
标签: powershell properties indexof generic-list