类类型的对象的Powershell列表

类类型的对象的Powershell列表,powershell,powershell-5.0,Powershell,Powershell 5.0,我试图遍历类类型的对象列表。 该类如下所示: Class UrlTestModel { [String]$Name [String]$Url [String]$TestInProd } 因此,我希望能够创建一个包含上述三个字符串的对象列表,然后遍历该列表并处理数据。 由于某种原因,我找不到一种方法来做到这一点。看起来很简单。我对powershell有点陌生,来自C#背景,所以我可能会认为C#太多而powershell不够 您可以通过以下方式创建新实例: 新对象-Type

我试图遍历类类型的对象列表。 该类如下所示:

Class UrlTestModel
{
    [String]$Name
    [String]$Url
    [String]$TestInProd
}
因此,我希望能够创建一个包含上述三个字符串的对象列表,然后遍历该列表并处理数据。
由于某种原因,我找不到一种方法来做到这一点。看起来很简单。我对powershell有点陌生,来自C#背景,所以我可能会认为C#太多而powershell不够

您可以通过以下方式创建新实例:

新对象-TypeName“UrlTestModel”-属性@{
Name=“string”
Url=“string”
TestInProd=“字符串”
}
或者在类中定义构造函数:

类UrlTestModel
{
[字符串]$Name
[字符串]$Url
[字符串]$TestInProd
UrlTestModel([string]$name,[string]$url,[string]$testInProd){
$this.Name=$Name
$this.Url=$Url
$this.TestInProd=$TestInProd
}
}
然后创建一个新实例,如下所示:

[UrlTestModel]::新建(“字符串”、“字符串”、“字符串”)
您可以在中阅读更多关于它的信息

列表基本上是使用以下命令创建的:

$list=[UrlTestModel]::新建(“name1”、“url1”、“true”),[UrlTestModel]::新建(“name2”、“url2”、“false”)
#或
$a=新对象-TypeName UrlTestModel-Property@{Name=“string”Url=“string”TestInProd=“string”}
$b=新对象-TypeName UrlTestModel-Property@{Name=“string”Url=“string”TestInProd=“string”}
$list=$a,$b
使用cmdlet或语句在列表上迭代:

$list| ForEach对象{
#这是当前项目:
$_
}
#或
foreach($列表中的项目){
# ... 
}

如果你已经有了一个对象列表,那么它就像
$list | ForEach Object{}
ForEach($list中的项){}
一样简单,谢谢!在使用新对象时,它不起作用,但在使用构造函数声明类时,它起作用了。