Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Poziom nasilenia: Ostrzeżenie
Opis
Ta reguła wykrywa niedopasowane operatory przypisania w tablicach haszujących i definicjach enum. Kolejne instrukcje przypisania są łatwiejsze do odczytania i utrzymania, gdy operatory przypisania są ustawione pionowo.
Ta reguła sprawdza pary klucz-wartość w hashtables oraz definicjach członków enum, aby upewnić się, że znaki = się zgadzają. Użyj tej reguły, aby wymusić spójne formatowanie w wieloliniowych tablicach hashujących i definicjach enum.
Reguła ignoruje przypisania w tablicach haszujących i enumach, które pojawiają się w tej samej linii co inne przypisania. Na przykład reguła ignoruje $h = @{ a = 1; b = 2 }.
Przykład
Niezgodne
$hashtable = @{
property = 'value'
anotherProperty = 'another value'
}
enum Enum {
member = 1
anotherMember = 2
}
Zgodne
$hashtable = @{
property = 'value'
anotherProperty = 'another value'
}
enum Enum {
member = 1
anotherMember = 2
}
Konfiguracja
Rules = @{
PSAlignAssignmentStatement = @{
Enable = $true
CheckHashtable = $true
AlignHashtableKvpWithInterveningComment = $true
CheckEnum = $true
AlignEnumMemberWithInterveningComment = $true
IncludeValuelessEnumMembers = $true
}
}
Parametry
Enable
Ten parametr decyduje, czy ScriptAnalyzer sprawdza kod względem tej reguły. Akceptuje wartość boolowską. Aby włączyć tę regułę, ustaw ten parametr na .$true Wartość domyślna to $false.
CheckHashtable
Ten parametr kontroluje, czy ScriptAnalyzer sprawdza wyrównanie przypisania w konfiguracjach hash table oraz Desired State Configuration (DSC). Akceptuje wartość boolowską. Aby wyłączyć tę kontrolę, ustaw ten parametr na $false. Wartość domyślna to $true.
AlignHashtableKvpWithInterveningComment
Ten parametr decyduje, czy ScriptAnalyzer zawiera kombinacje klucz-wartość w tablicy haszującej, które zawierają komentarz pośredni podczas określania wyrównania. Akceptuje wartość boolowską. Aby wykluczyć te linie, ustaw ten parametr na .$false Wartość domyślna to $true.
Rozważ następujące kwestie:
$hashtable = @{
property = 'value'
anotherProperty <#A Comment#> = 'another value'
anotherDifferentProperty = 'yet another value'
}
Po wyłączeniu tego ustawienia linijka z komentarzem jest ignorowana. Znaki równości są wyrównane dla pozostałych linii:
$hashtable = @{
property = 'value'
anotherProperty <#A Comment#> = 'another value'
anotherDifferentProperty = 'yet another value'
}
Przy tym ustawieniu znaki równości są wyrównane dla wszystkich linii:
$hashtable = @{
property = 'value'
anotherProperty <#A Comment#> = 'another value'
anotherDifferentProperty = 'yet another value'
}
CheckEnum
Ten parametr kontroluje, czy ScriptAnalyzer sprawdza wyrównanie przypisania w definicjach członków enum. Akceptuje wartość boolowską. Aby wyłączyć tę kontrolę, ustaw ten parametr na $false. Wartość domyślna to $true.
Zrównaj EnumMemberZKomentarzemInterwencją
Ten parametr decyduje, czy ScriptAnalyzer uwzględnia członków enum zawierających komentarz pośredni podczas określania wyrównania. Akceptuje wartość boolowską. Aby wykluczyć te linie, ustaw ten parametr na .$false Wartość domyślna to $true.
IncludeValuelessEnumMembers
Ten parametr kontroluje, czy ScriptAnalyzer uwzględnia członki enum bez wyraźnego przypisania wartości podczas określania wyrównania. Akceptuje wartość boolowską. Aby wykluczyć elementy bezwartościowe, ustaw ten parametr na .$false Wartość domyślna to $true.
Rozważ następujące kwestie:
enum Enum {
member = 1
anotherMember = 2
anotherDifferentMember
}
Po wyłączeniu tego ustawienia trzecia linia, która nie ma wartości, nie jest brana pod uwagę przy wyborze miejsca wyrównania przypisań.
enum Enum {
member = 1
anotherMember = 2
anotherDifferentMember
}
Po jego włączeniu, bezwartościowy członek jest uwzględniany w wyrównaniu, jakby miał wartość:
enum Enum {
member = 1
anotherMember = 2
anotherDifferentMember
}