在 ConvertTo-Html cmdlet 中访问嵌套的 属性

Accessing a nested property within the ConvertTo-Html cmdlet

如何在下面的 html table 中添加值 Sku.NameSku.Tier

$resourceGroupName = "(my resourcegroup name)"
$storageAccounts = Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName
$storageAccounts `
 | ConvertTo-Html `
   -property ResourceGroupName, StorageAccountName, Sku, Sku.Name, Sku.Tier, Kind, Encryption, AccessTier `
   -body "<h2>List of Storage Accounts</h2>" `
   -As List `
 | Set-Content "temp.html"

结果"temp.html"

List of Storage Accounts
ResourceGroupName:  "(my resourcegroup name)"
StorageAccountName: "(my storage account name)"
Sku:    Microsoft.Azure.Management.Storage.Models.Sku
Kind:   BlobStorage
Encryption: Microsoft.Azure.Management.Storage.Models.Encryption
AccessTier: Cool

预计

List of Storage Accounts
ResourceGroupName:  "(my resourcegroup name)"
StorageAccountName: "(my storage account name)"
Sku:    Microsoft.Azure.Management.Storage.Models.Sku
Sku.Name:   StandardLRS
Sku.Tier:   Standard
Kind:   BlobStorage
Encryption: Microsoft.Azure.Management.Storage.Models.Encryption
AccessTier: Cool

错误

正在尝试

-property (Sku).Name

结果:

+    -property (Sku).Name
+               ~~~
    + CategoryInfo          : ObjectNotFound: (Sku:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

您需要使用计算属性

-property ResourceGroupName, StorageAccountName, Sku, @{l='Sku Name'; e={$_.Sku.Name}},  @{l='Sku Tier'; e={$_.Sku.Tier}}, Kind, Encryption, AccessTier