コマンドレット パラメーターを宣言する方法

これらの例では、名前付き、位置指定、必須、省略可能、および [switch] パラメーターを宣言する方法を示します。 これらの例では、パラメーターエイリアスを定義する方法も示します。

名前付きパラメーターを宣言する方法

  • 次のコードに示すように、パブリック プロパティを定義します。 Parameter 属性を追加するときは、属性から Position キーワードを省略します。

    [Parameter()]
    public string UserName
    {
      get { return userName; }
      set { userName = value; }
    }
    private string userName;
    

Parameter 属性の詳細については、「パラメーター属性 の宣言」を参照してください。

位置指定パラメーターを宣言する方法

  • 次のコードに示すように、パブリック プロパティを定義します。 Parameter 属性を追加するときは、引数の位置に Position キーワードを設定します。 値 0 は、最初の位置を示します。

    [Parameter(Position = 0)]
    public string UserName
    {
      get { return userName; }
      set { userName = value; }
    }
    private string userName;
    

Parameter 属性の詳細については、「パラメーター属性 の宣言」を参照してください。

必須パラメーターを宣言する方法

  • 次のコードに示すように、パブリック プロパティを定義します。 Parameter 属性を追加するときは、 Mandatory キーワードを true に設定します。

    [Parameter(Position = 0, Mandatory = true)]
    public string UserName
    {
      get { return userName; }
      set { userName = value; }
    }
    private string userName;
    

Parameter 属性の詳細については、「パラメーター属性 の宣言」を参照してください。

省略可能なパラメーターを宣言する方法

  • 次のコードに示すように、パブリック プロパティを定義します。 Parameter 属性を追加するときは、 Mandatory キーワードを省略します。

    [Parameter(Position = 0)]
    public string UserName
    {
      get { return userName; }
      set { userName = value; }
    }
    private string userName;
    

[switch] パラメーターを宣言する方法

  • パブリック プロパティを System.Management.Automation.SwitchParameter 型として定義し、Parameter 属性を宣言します。

    [Parameter(Position = 1)]
    public SwitchParameter GoodBye
    {
      get { return goodbye; }
      set { goodbye = value; }
    }
    private bool goodbye;
    

Parameter 属性の詳細については、「パラメーター属性 の宣言」を参照してください。

エイリアスを使用してパラメーターを宣言する方法

  • 次のコードに示すように、パブリック プロパティを定義します。 パラメーターのエイリアスを一覧表示する Alias 属性を追加します。 この例では、同じパラメーターに対して 3 つのエイリアスが定義されています。 最初のエイリアスはショートカットを提供します。 2 番目と 3 番目のエイリアスは、さまざまなシナリオで使用できる名前を提供します。

    [Alias("UN","Writer","Editor")]
    [Parameter()]
    public string UserName
    {
      get { return userName; }
      set { userName = value; }
    }
    private string userName;
    

Alias 属性の詳細については、「 エイリアス属性の宣言」を参照してください。

こちらもご覧ください

System.Management.Automation.SwitchParameter

パラメーター属性の宣言

Alias 属性宣言

Windows PowerShell コマンドレットの作成