パラメーター属性の宣言
Parameter 属性は、コマンドレット クラスのパブリック プロパティをコマンドレット パラメーターとして識別します。
構文
[Parameter()]
[Parameter(Named Parameters...)]
パラメーター
Mandatory
(System.Boolean) 省略可能な名前付きパラメーター。 True
は、コマンドレット パラメーターが必要な場合に示します。 コマンドレットの呼び出し時に必要なパラメーターが指定されていない場合、Windows PowerShellパラメーター値をユーザーに求めるメッセージが表示されます。 既定では、 false
です。
ParameterSetName
(System.String) 省略可能な名前付きパラメーター。 このコマンドレット パラメーターが属するパラメーター セットを指定します。 パラメーター セットが指定されていない場合、パラメーターは、すべてのパラメーター セットに属します。
Position
(System.Int32) 省略可能な名前付きパラメーター。 コマンド内のパラメーターの位置Windows PowerShellします。
ValueFromPipeline
(System.Boolean) 省略可能な名前付きパラメーター。 True
は、コマンドレット パラメーターがパイプライン オブジェクトから値を受け取ります。 コマンドレットが オブジェクトのプロパティではなく、完全なオブジェクトにアクセスする場合は、このキーワードを指定します。 既定では、 false
です。
ValueFromPipelineByPropertyName
(System.Boolean) 省略可能な名前付きパラメーター。 True
は、コマンドレット パラメーターが、このパラメーターと同じ名前または同じエイリアスを持つパイプライン オブジェクトのプロパティから値を取得します。 たとえば、コマンドレットにパラメーターが含み、パイプライン オブジェクトにも プロパティがある場合、 プロパティの値はコマンドレットの パラメーター Name
Name
Name
Name
に割り当てられます。 既定では、 false
です。
ValueFromRemainingArguments
(System.Boolean) 省略可能な名前付きパラメーター。 True
は、コマンドレット パラメーターが、コマンドレットに渡される残りのすべての引数を受け入れるかどうかを示します。 既定では、 false
です。
HelpMessage
省略可能な名前付きパラメーター。 パラメーターの簡単な説明を指定します。 Windows PowerShellコマンドレットが実行され、必須パラメーターが指定されていない場合に、このメッセージが表示されます。
HelpMessageBaseName
省略可能な名前付きパラメーター。 リソース識別子が存在する場所を指定します。 たとえば、このパラメーターでは、ローカライズするヘルプ メッセージを含むリソース アセンブリを指定できます。
HelpMessageResourceId
省略可能な名前付きパラメーター。ヘルプ メッセージのリソース識別子を指定します。
注釈
この属性を宣言する方法の詳細については、「コマンドレット パラメーターを宣言する 方法」を参照してください。
コマンドレットには、任意の数のパラメーターを指定できます。 ただし、ユーザー エクスペリエンスを向上するには、パラメーターの数を制限します。
パラメーターは、パブリックな非静的フィールドまたはプロパティで宣言する必要があります。 パラメーターはプロパティで宣言する必要があります。 プロパティにはパブリック set アクセサーが必要です。または キーワードが指定されている場合、プロパティにはパブリック get アク
ValueFromPipeline
ValueFromPipelineByPropertyName
セサーが必要です。位置指定パラメーターを指定する場合は、パラメーターセット内の位置指定パラメーターの数を 5 未満に制限します。 また、位置指定パラメーターを連続する必要はありません。 位置 5、100、および 250 は、位置 0、1、および 2 と同じように機能します。
キーワードを
Position
指定しない場合は、コマンドレット パラメーターを名前で参照する必要があります。パラメーター セットを使用する場合は、次の点に注意してください。
各パラメーター セットには、少なくとも 1 つの一意のパラメーターが必要です。 優れたコマンドレット設計は、可能であれば、この一意のパラメーターも必須である必要があります。 コマンドレットがパラメーターなしで実行するように設計されている場合、一意のパラメーターを必須にすることはできません。
パラメーター セットに、同じ位置を持つ複数の位置指定パラメーターを含めすることはできません。
を宣言する必要があるパラメーター セット内のパラメーターは 1 つのみです
ValueFromPipeline = true
。複数のパラメーターで を定義できます
ValueFromPipelineByPropertyName = true
。
パラメーター名のガイドラインの詳細については、「コマンドレット パラメーター名」 を参照してください。
パラメーター属性は 、System.Management.Automation.Parameterattribute クラスによって定義 されます。