Исключение перехвата PowerShell в блоке Param () - PullRequest
1 голос
/ 27 сентября 2019
Param(
    [ValidateRange(21,90)]
    [int[]]$Age
)

Как отловить исключение, когда $age находится вне диапазона?

1 Ответ

0 голосов
/ 27 сентября 2019

Как было отмечено в комментариях, ошибка проверки должна быть обнаружена в контексте вызова

try{
  .\Set-Age.ps1
}
catch [System.Management.Automation.ParameterBindingException] {
  Write-Host "Error thrown while attempting to bind an argument to parameter $($_.Exception.ParameterName), with message: $($_.Exeption.Message)"
}
catch {
  # something other than the parameter binder threw an exception
}
...