次の方法で共有


パラメーター セットを宣言する方法

この例では、コマンドレットのパラメーターを宣言するときに2つのパラメーターセットを定義する方法を示します。 各パラメーターセットには、一意のパラメーターと、両方のパラメーターセットで使用される共有パラメーターの両方があります。 既定のパラメーターセットの指定方法など、パラメーターセットの詳細については、「 コマンドレットパラメーターセット」を参照してください。

重要

可能な限り、パラメーターセットの一意のパラメーターを必須パラメーターとして定義します。 ただし、パラメーターを指定せずにコマンドレットを実行する場合は、unique パラメーターを省略可能なパラメーターにすることができます。 たとえば、コマンドレットの一意のパラメーター Get-Command は省略可能です。

2つのパラメーターセットを定義する方法

  1. 最初の ParameterSet パラメーターセットの unique パラメーターのパラメーター属性にキーワードを追加します。

    [Parameter(Position = 0, Mandatory = true,
               ParameterSetName = "Test01")]
    public string UserName
    {
      get { return userName; }
      set { userName = value; }
    }
    private string userName;
    
  2. ParameterSet2 番目のパラメーターセットの unique パラメーターの parameter 属性にキーワードを追加します。

    [Parameter(Position = 0, Mandatory = true,
               ParameterSetName = "Test02")]
    public string ComputerName
    {
      get { return computerName; }
      set { computerName = value; }
    }
    private string computerName;
    
  3. 両方のパラメーターセットに属するパラメーターについては、各パラメーターセットにパラメーター属性を追加し、 ParameterSet 各セットにキーワードを追加します。 各パラメーター属性では、パラメーターの定義方法を指定できます。 パラメーターは、1つのセットでは省略可能であり、別のセットでは必須です。

    [Parameter(Mandatory= true, ParameterSetName = "Test01")]
    [Parameter(ParameterSetName = "Test02")]
    public string SharedParam
    {
        get { return sharedParam; }
        set { sharedParam = value; }
    }
    private string sharedParam;
    

参照

コマンドレット パラメーター セット

Windows PowerShell コマンドレットの記述