powershell计算属性在计算前插入变量



一段时间以来,我一直在尝试将$Tenant.Name变量作为文本插入,而不是作为稍后获取的变量。

目前我收到以下输出:

thead>
租户1-AAD角色 租户1-组 租户2-AAD任务
Tenant2Administrator Tenant2AAdminGroup

我通过改变创建脚本块的方法来解决了这个问题。

我换成了

foreach ($Tenant in $Tenants) {
$properties += @{
Name = "$($Tenant.Name) - AADRoles"
Expression = {($_.($Tenant.Name).'Roles'.'DisplayName' | Sort-Object) -join ', '}
}
$properties += @{
Name = "$($Tenant.Name) - Groups"
Expression = {($_.($Tenant.Name).'Groups'.'DisplayName' | Sort-Object) -join ', '}
}
}

到此:

foreach ($Tenant in $Tenants.Name) {
$properties += @{
Name = "$Tenant - AADRoles"
Expression = ([Scriptblock]::Create("(`$_.'$Tenant'.'Roles'.'DisplayName' | Sort-Object) -join ', '"))
}
$properties += @{
Name = "$Tenant - Groups"
Expression = ([Scriptblock]::Create("(`$_.'$Tenant'.'Groups'.'DisplayName' | Sort-Object) -join ', '"))
}
}

最新更新