Angenommen, ich habe den folgenden Ausschnitt:
$assoc = New-Object psobject -Property @{
Id = 42
Name = "Slim Shady"
Owner = "Eminem"
}
Write-host $assoc.Id + " - " + $assoc.Name + " - " + $assoc.Owner
Ich würde erwarten, dass dieses Snippet Folgendes zeigt:
42 - Slim Shady - Eminem
Aber stattdessen zeigt es:
42 + - + Slim Shady + - + Eminem
Aus diesem Grund denke ich, dass der +
Operator nicht zum Verketten von Zeichenfolgen und Variablen geeignet ist.
Wie sollten Sie dies mit PowerShell angehen?
Write-host ($assoc.Id.ToString() + " - " + $assoc.Name + " - " + $assoc.Owner)
hier $ assoc.Id ist eine,Int32
daher müssen wir seine Zeichenfolgendarstellung verwenden. Andernfalls versucht PS, anstelle der Verkettung eine arithmetische Addition durchzuführen.