当函数参数使用验证集时,我似乎无法进行splatting。
以下示例产生以下错误:
WhichFruit:无法验证参数'fruit'的参数。该 参数“System.Collections.Hashtable”不属于该集合 ValidateSet属性指定的“Apple,Orange”。供应一个 该集合中的参数然后再次尝试该命令。
Function WhichFruit {
param(
[ValidateSet("Apple","Orange")]
[string]$fruit
)
Write-Host $fruit
}
$params = @{ fruit = "Apple" }
WhichFruit $params
答案 0 :(得分:1)
您没有使用splatting运算符@
Function WhichFruit {
param(
[ValidateSet("Apple","Orange")]
[string]$fruit
)
Write-Host $fruit
}
$params = @{ fruit = "Apple" }
WhichFruit @params