AvoidAssignmentToAutomaticVariable

Úroveň závažnosti: Varování

Description

Toto pravidlo detekuje přiřazení automatickým proměnným a názvy parametrů, které používají automatická jména proměnných. PowerShell automaticky definuje proměnné, které ukládají interní informace o stavu, a spravuje je samostatně. I když můžete přepsat mnoho automatických proměnných, může to mít nečekané dopady pro uživatele a ztížit údržbu a ladění kódu.

Vyhněte se používání automatických názvů proměnných ve svých funkcích a parametrech. Automatické proměnné si vyhraďte pouze pro interní použití PowerShellu a spoléhejte se na ně pouze při čtení stavových informací.

Pro více informací viz about_Automatic_Variables.

Jak

Používejte názvy proměnných ve funkcích nebo jejich parametrech, které nejsou v rozporu s automatickými proměnnými.

Example

Nesplňující

Proměnná $Error je automatická proměnná, která existuje v globálním rozsahu, a proto by nikdy neměla být používána jako název proměnné nebo parametru.

function foo($Error){ }
function Get-CustomErrorMessage($ErrorMessage){ $Error = "Error occurred: $ErrorMessage" }

Kompatibilní

function Get-CustomErrorMessage($ErrorMessage){ $FinalErrorMessage = "Error occurred: $ErrorMessage" }