Partager via


Paramètres dynamiques des applets de commande de fournisseur

Les fournisseurs peuvent définir des paramètres dynamiques ajoutés à une applet de commande de fournisseur lorsque l’utilisateur spécifie une certaine valeur pour l’un des paramètres statiques de l’applet de commande. Par exemple, un fournisseur peut ajouter différents paramètres dynamiques en fonction du chemin d’accès spécifié par l’utilisateur lorsqu’il appelle les applets de commande Get-Item ou Set-Item fournisseur.

Méthodes de paramètre dynamique

Les paramètres dynamiques sont définis en implémentant l’une des méthodes de paramètre dynamique, telles que la System.Management.Automation.Provider.ItemCmdletProvider.GetItemDynamicParameters* et System.Management.Automation.Provider.SetItemDynamicParameters.SetItemDynamicParameters* méthodes. Ces méthodes retournent un objet qui a des propriétés publiques décorées avec des attributs similaires à ceux des applets de commande autonomes. Voici un exemple d’implémentation de la méthode System.Management.Automation.Provider.ItemCmdletProvider.GetItemDynamicParameters* issue du fournisseur de certificats :

protected override object GetItemDynamicParameters(string path)
{
    return new CertificateProviderDynamicParameters();
}

Contrairement aux paramètres statiques des applets de commande du fournisseur, vous pouvez spécifier les caractéristiques de ces paramètres de la même façon que les paramètres sont définis dans les applets de commande autonomes. Voici un exemple de classe de paramètre dynamique extraite du fournisseur de certificats :

internal sealed class CertificateProviderDynamicParameters
{
  /// <summary>
  /// Dynamic parameter the controls whether we only return
  /// code signing certs.
  /// </summary>
  [Parameter()]
  public SwitchParameter CodeSigningCert
  {
    get
    {
      {
        return codeSigningCert;
      }
    }

    set
    {
      {
        codeSigningCert = value;
      }
    }
  }

    private SwitchParameter codeSigningCert = new SwitchParameter();
}

Paramètres dynamiques

Voici une liste des paramètres statiques qui peuvent être utilisés pour ajouter des paramètres dynamiques.

Voir aussi

écrire un fournisseur Windows PowerShell