Private/Get-AzAdvisorExtendedProperty.ps1
|
function Get-AzAdvisorExtendedProperty { [CmdletBinding()] param( [Parameter(Mandatory = $true)] [object]$Recommendation ) if ($Recommendation.PSObject.Properties.Name -contains 'ExtendedPropertyObject') { return $Recommendation.ExtendedPropertyObject } $extendedPropertyObject = $null if ($Recommendation.ExtendedProperty) { try { if ($Recommendation.ExtendedProperty -is [string]) { $extendedPropertyObject = $Recommendation.ExtendedProperty | ConvertFrom-Json } else { # Az.Advisor versions can return an already-materialized property object. $extendedPropertyObject = $Recommendation.ExtendedProperty } } catch { Write-Verbose "Failed to parse ExtendedProperty: $_" } } $Recommendation | Add-Member ` -NotePropertyName ExtendedPropertyObject ` -NotePropertyValue $extendedPropertyObject ` -Force return $extendedPropertyObject } |