PowerShell 1.0 で、列挙型のコマンドレット パラメーターがある場合、ユーザーがコマンドレット コマンド ラインでそのパラメーターを指定したかどうかをテストするための推奨される方法は何ですか? 例えば:
MyEnum : int { No = 0, Yes = 1, MaybeSo = 2 }
class DoSomethingCommand : PSCmdlet
...
private MyEnum isEnabled;
[Parameter(Mandatory = false)]
public MyEnum IsEnabled
{
get { return isEnabled; }
set { isEnabled = value; }
}
protected override void ProcessRecord()
{
// How do I know if the user passed -IsEnabled <value> to the cmdlet?
}
isEnabled にダミー値をシードすることなくこれを行う方法はありますか? デフォルトでは 0 になります。すべてのパラメーターをシードしたり、列挙型にダミー値を追加したりする必要はありません。数百のパラメーターを持つ多くのコマンドレットを潜在的に持っている可能性があります。より良い方法が必要です。これはこの質問に関連していますが、これを行うためのよりクリーンな方法を探していました。ありがとう。