h41msh1c0r
Goto Top

Powershell Hashtable Key False

Aloa,

Hashtable
$alldata

Name                           Value                                                                         
----                           -----                                                                         
@{serviceName=TRAINING {Count, Status, Ordered, Modified...}                                         
@{serviceName=TRN {Count, Status, Ordered, Modified...}                                         
@{serviceName=ad_test {Count, Status, Ordered, Modified...}

Jetzt wird gesucht ob "ad_test" vorhanden ist:

$alldata.ContainsKey("ad_test")  

--> False

$alldata.Keys | %{

    write-host $_.serviceName

    if ($_.serviceName -like "ad_test"){  
        write-host "enthält"  
    }else{
        write-host "enthält NICHT"  
    }
}
Wenn ich aber die Keys durchlaufe findet er ihn natürlich.

Warum liefert ContainsKey ein False?

VG

Content-ID: 667951

Url: https://administrator.de/contentid/667951

Printed on: September 8, 2024 at 06:09 o'clock

Dani
Dani Sep 06, 2024 at 16:50:35 (UTC)
Goto Top
Moin,
möchtest du noch den Code posten, mit dem du die Variable $alldata erzeugt hast?


Gruß,
Dani
naughty
naughty Sep 06, 2024 updated at 19:09:42 (UTC)
Goto Top
Warum liefert ContainsKey ein False?
Weil deine Keys in sich selbst schon
Hashtables sind und keine Strings, denn der String den du suchst ist in der Key-Hashtable unter "ServiceName" verzeichnet...sieht man ja schon am ersten Beispiel deiner Ausgabe.
Du hast unnötigerweise doppelt gemoppelt verschachtelt.
aqui
aqui Sep 07, 2024 at 07:24:58 (UTC)
Goto Top
naughty
naughty Sep 07, 2024 updated at 08:33:41 (UTC)
Goto Top

Da gab es noch einen der das mal so auf sein Cover gepresst hat 😂. Die billige Kopie von Freddy Quinn
https://www.discogs.com/de/release/1183730-Freddy-Breck-Halli-Hallo-Aloa ...
aqui
aqui Sep 07, 2024 updated at 16:26:52 (UTC)
Goto Top
Oha, der sieht auch nicht so aus als ob er jemals auf Hawaii war und "Aloha" gesagt hat! 🤣