Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Severity Level: Warning
Description
This rule discourages manual declaration of WhatIf
and Confirm
parameters in a function/cmdlet.
These parameters are, however, provided automatically when a function declares a CmdletBinding
attribute with SupportsShouldProcess
as its named argument. Using SupportsShouldProcess
not only
provides these parameters but also some generic functionality that allows the function/cmdlet
authors to provide the desired interactive experience while using the cmdlet.
Example
Wrong
function foo {
param(
$param1,
$Confirm,
$WhatIf
)
}
Correct
function foo {
[CmdletBinding(SupportsShouldProcess)]
param(
$param1
)
}