Probleme der Rückkehr hashtable

Also wenn ich den folgenden code:

function DoSomething {
  $site = "Something"
  $app = "else"
  $app
  return @{"site" = $($site); "app" = $($app)}
}

$siteInfo = DoSomething
$siteInfo["site"]

Warum nicht $siteInfo["site"] return "Etwas"?

Kann ich sagen nur....

$siteInfo

Und es erfolgt die Rückkehr

else

Key: site
Value: Something
Name: site

Key: app
Value: else
Name: app

Was bin ich?

  • $siteInfo["site"] zurück Something für mich.
  • für mich auch, powershell-version?
  • Ok, ich habe ein paar mehr Infos. Ich habe nur ein einfacher Aufruf auf eine variable ($app) oben in meiner Funktion code. Was war eintretenden war, dass der Wert von $app und die hashtable zurückgegeben wurde, um die variable, die die Funktion aufgerufen wurde. Also wenn ich einen ($siteInfo | fl) wäre es für beide "else" und dann die beiden Schlüssel/Werte. Warum ist das so?
  • Es scheint, dass da Sie haben $app ganz von allein auf einer Zeile, die Sie möchten, um etwas zu drucken auf den Bildschirm die Funktion selbst aber nicht an den Aufrufer zurückgeben. Sie können dies tun, mit der Out-Host oder Write-Host cmdlets, die Anzeige des Objekts, aber nicht verpflichten, es an die pipeline. Zum Beispiel: Write-Host $app oder $app | Out-Host.
InformationsquelleAutor pghtech | 2011-12-29
Schreibe einen Kommentar