【问题标题】:GetEnumerator error whilst running my script运行我的脚本时出现 GetEnumerator 错误
【发布时间】:2021-03-16 18:35:12
【问题描述】:

我正在尝试使用以下脚本提取和导出 Azure Webapp 设置

 $allWebApps = Get-AzureRmWebApp
 $resourceGroups = $allWebApps | Select-Object 'ResourceGroup' -Unique
 foreach($r in $resourceGroups)
{
$rgName = $r.ResourceGroup    
$webApps = Get-AzureRmWebApp -ResourceGroupName $rgName

foreach($w in $webApps)
{
    $webAppName = $w.Name        
    Write-Host Processing Webapp : $webAppName

    $webApp = Get-AzureRmWebApp -ResourceGroupName $rgName -Name $webAppName
    $appSettings = $webApps.SiteConfig.AppSettings

    # Extract AppSettings to CSV
    $appSettings.GetEnumerator() | 
            Sort-Object -Property Name -Descending |
            Select-Object -Property @{n='Key';e={$_.Name}},Value |
            Export-Csv -Path "C:\Cloud\$webAppName.csv" -NoTypeInformation -Append

}
}    

但我不断收到以下错误:

You cannot call a method on a null-valued expression.
At C:\Cloud\ExportsWebApp_config.ps1:17 char:9
+         $appSettings.GetEnumerator() |
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

有人可以帮忙吗?

【问题讨论】:

  • 该错误通常意味着有问题的 $Var 为空。您是否检查过$appSettings 在那个时候是否包含任何内容?

标签: azure powershell azure-web-app-service


【解决方案1】:
$appSettings = $webApps.SiteConfig.AppSettings

我认为应该更改此行,否则您将尝试获取整个网络应用程序数组的属性。

$appSettings = $webApp.SiteConfig.AppSettings

【讨论】:

  • 谢谢,但这不是问题,我能够确定
猜你喜欢
  • 2023-01-25
  • 2021-03-17
  • 2019-08-23
  • 2020-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-28
  • 1970-01-01
相关资源
最近更新 更多