How can I make Validate-set also to work for mandatory parameter input prompt?

前端 未结 2 2058
囚心锁ツ
囚心锁ツ 2021-01-07 03:07

I use dynamic validate sets for my functions for mandatory parameters.

When not provided Powershell prompts and forces user to input.

However in this case, T

2条回答
  •  情深已故
    2021-01-07 03:53

    You can only use tab on ValidateSet You can see same behavior if you use Show-Command The only pre run validation is ValidateSet

    try this:

    Function Test-Function
    {
        Param
        (
            [String]$NormalParameter,
            [ValidateSet('T1','T2','T3')]
            [String]$ValidateSetParameter,
            [ValidatePattern("[T4]|[T5]|[T6]")]
            [String]$ValidatePatternParameter,
            [ValidateScript({$_ -In ('T7','T8','T9')})]
            [String]$ValidateScriptParameter,
            [ValidateRange('A','C')]
            [String]$ValidateRangeParameter
        )   
    }
    
    Show-Command Test-Function
    

提交回复
热议问题