AvoidUsingPositionalParameters

Tingkat Keparahan : Informasi

Status default: Diaktifkan

Description

Aturan ini mendeteksi saat perintah dipanggil dengan tiga parameter posisi atau lebih alih-alih menggunakan parameter bernama. Menggunakan parameter posisi mengurangi keterbacaan kode dan dapat menimbulkan kesalahan. Ada kemungkinan bahwa versi cmdlet mendatang dapat berubah dengan cara yang akan merusak skrip yang ada jika mereka mengandalkan posisi parameter.

Untuk cmdlet sederhana dengan hanya beberapa parameter posisi, risikonya jauh lebih kecil. Untuk mencegah aturan ini terlalu berisik, jangan berikan tiga parameter atau lebih. Contoh sederhana di mana risiko menggunakan parameter posisi dapat diabaikan adalah Test-Path $Path.

Gunakan nama parameter lengkap saat memanggil perintah.

Example

Tidak sesuai

Get-Command ChildItem Microsoft.PowerShell.Management

Sesuai

Get-Command -Noun ChildItem -Module Microsoft.PowerShell.Management

Mengonfigurasi aturan

Rules = @{
    PSAvoidUsingPositionalParameters = @{
        CommandAllowList = 'Join-Path', 'MyCmdletOrScript'
        Enable           = $true
    }
}

Parameters

Daftar Perintah yang Diizinkan

Parameter ini menentukan perintah atau skrip yang akan dikecualikan dari aturan ini. Ini menerima array string. Nilai defaultnya adalah @().

Enable

Parameter ini mengontrol apakah ScriptAnalyzer memeriksa kode terhadap aturan ini. Ini menerima nilai boolean. Untuk menonaktifkan aturan ini, atur parameter ini ke $false. Nilai defaultnya adalah $true.