PowerShell ValidateSet
The Powershell validate set can be used to validate the powershell parameters that are getting supplied to the script. This is useful, when you want to validate a boolean value like True or False, or when you want to ensure that, user is selecting the right choice, when supplying the input values to a function or a script.
Function Sample-Validation { [cmdletbinding()] Param( [Parameter(Position=0,Mandatory=$True, HelpMessage="Select the choice, True or False")] [ValidateSet("True","False" )] [string]$Choice = "False", [ValidateNotNullorEmpty()] ) $Choice } # Sample Choices Sample-Validation -Choice "True" Sample-Validation -Choice "False" Sample-Validation -Choice "Falseeeee" Sample-Validation -Choice $null Sample-Validation -Choice ""
When the choice is True
When the choice is False
When the choice is having spelling mistake
When the choice is null
When the choice is empty
Similare write ups can be found in the Microsoft dev blogs here