Udostępnij przez


UseLiteralInitializerForHashtable

Poziom ważności: ostrzeżenie

Opis

Utworzenie tabeli skrótu przy użyciu [hashtable]::new() metody lub New-Object -TypeName hashtable bez przekazywania IEqualityComparer obiektu do konstruktora tworzy tabelę skrótów, w której klucze są sprawdzane w sposób uwzględniający wielkość liter. Jednak program PowerShell ma charakter bez uwzględniania wielkości liter i najlepiej utworzyć tabele skrótów z wyszukiwaniem kluczy bez uwzględniania wielkości liter.

Ta reguła jest przeznaczona do ostrzegania autora o charakterze rozróżniania wielkości liter w tabeli skrótów podczas tworzenia przy użyciu new metody lub New-Object polecenia cmdlet.

Jak rozwiązać problem

Utwórz tabelę skrótów przy użyciu wyrażenia tabeli skrótów literału.

Przykład

Nieodpowiednim

$hashtable = [hashtable]::new()

Nieodpowiednim

$hashtable = New-Object -TypeName hashtable

Odpowiedź prawidłowa

$hashtable = @{}