Supponiamo che io abbia il seguente frammento:
$assoc = New-Object psobject -Property @{
Id = 42
Name = "Slim Shady"
Owner = "Eminem"
}
Write-host $assoc.Id + " - " + $assoc.Name + " - " + $assoc.Owner
Mi aspetto che questo snippet mostri:
42 - Slim Shady - Eminem
Ma invece mostra:
42 + - + Slim Shady + - + Eminem
Il che mi fa pensare che l' +
operatore non sia appropriato per concatenare stringhe e variabili.
Come dovresti affrontarlo con PowerShell?
Write-host ($assoc.Id.ToString() + " - " + $assoc.Name + " - " + $assoc.Owner)
qui $ assoc.Id è unInt32
quindi dobbiamo usare la sua rappresentazione di stringa. Altrimenti PS tenta di eseguire un'aggiunta aritmetica invece di concatenazione.