【发布时间】:2011-08-29 19:58:47
【问题描述】:
我很确定除了我所发现的之外我没有其他选择,但我想选择集体互联网大脑。
在将布尔值传递给自定义函数时,我更喜欢使用 [switch] 参数。但是,在某些情况下,我想将 switch 参数标记为必需的。这可以选择通过参数上的 [parameter(Mandatory = $true)] 来完成。但是,我真的不喜欢出现的 UI 提示。我更喜欢抛出异常。
但是,开关可以是真或假,“IsPresent”属性没有区别。如果我将开关参数传递为 -example:$false,则开关会报告 $example.IsPresent 为 false!
我已经使用 [bool]。例如:
param
(
[bool]$theValue = $(throw('You didn't specify the value!'))
);
我还有什么其他的技巧吗?
【问题讨论】:
-
为什么没有两个开关?
example和exampleOff。然后,当IsPresent都没有抛出错误时。
标签: powershell parameters switch-statement