Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Leverantörer kan definiera dynamiska parametrar som läggs till i en provider-cmdlet när användaren anger ett visst värde för en av cmdletens statiska parametrar. En provider kan till exempel lägga till olika dynamiska parametrar baserat på vilken sökväg användaren anger när de anropar cmdletarna Get-Item eller Set-Item provider.
Metoder för dynamisk parameter
Dynamiska parametrar definieras genom att implementera någon av de dynamiska parametermetoderna, till exempel System.Management.Automation.Provider.ItemCmdletProvider.GetItemDynamicParameters* och System.Management.Automation.Provider.SetItemDynamicParameters.SetItemDynamicParameters* metoder. Dessa metoder returnerar ett objekt som har offentliga egenskaper som är dekorerade med attribut som liknar dem för fristående cmdletar. Här är ett exempel på en implementering av System.Management.Automation.Provider.ItemCmdletProvider.GetItemDynamicParameters* metod från certifikatprovidern:
protected override object GetItemDynamicParameters(string path)
{
return new CertificateProviderDynamicParameters();
}
Till skillnad från de statiska parametrarna för provider-cmdletar kan du ange egenskaperna för dessa parametrar på samma sätt som parametrar definieras i fristående cmdletar. Här är ett exempel på en dynamisk parameterklass som hämtats från certifikatprovidern:
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();
}
Dynamiska parametrar
Här är en lista över de statiska parametrar som kan användas för att lägga till dynamiska parametrar.
Clear-Contentcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdleten Clear-Clear genom att implementera metoden System.Management.Automation.Provider.IContentCmdletProvider.ClearContentDynamicParameters*.Clear-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdletenClear-Itemgenom att implementera System.Management.Automation.Provider.ItemCmdletProvider.ClearItemDynamicParameters*-metoden.Clear-ItemPropertycmdlet – Du kan definiera dynamiska parametrar som utlöses avPath-parametern i cmdletenClear-ItemPropertygenom att implementera metoden System.Management.Automation.Provider.IPropertyCmdletProvider.ClearPropertyDynamicParameters*.Copy-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPath,DestinationochRecurseför cmdletenCopy-Itemgenom att implementera metoden System.Management.Automation.Provider.ContainerCmdletProvider.CopyItemDynamicParameters*.Get-ChildItemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochRecurseför cmdletenGet-ChildItemgenom att implementera System.Management.Automation.Provider.ContainerCmdletProvider.GetChildItemsDynamicParameters* och System.Management.Automation.Provider.ContainerCmdletProvider.GetChildNamesDynamicParameters* metoder.Get-Contentcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdletenGet-Contentgenom att implementera System.Management.Automation.Provider.IContentCmdletProvider.GetContentReaderDynamicParameters*-metoden.Get-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdletenGet-Itemgenom att implementera metoden System.Management.Automation.Provider.ItemCmdletProvider.GetItemDynamicParameters*.Get-ItemPropertycmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochNameför cmdletenGet-ItemPropertygenom att implementera metoden System.Management.Automation.Provider.IPropertyCmdletProvider.GetPropertyDynamicParameters*.Invoke-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdletenInvoke-Itemgenom att implementera metoden System.Management.Automation.Provider.ItemCmdletProvider.InvokeDefaultActionDynamicParameters*.Move-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochDestinationför cmdletenMove-Itemgenom att implementera metoden System.Management.Automation.Provider.NavigationCmdletProvider.MoveItemDynamicParameters*.New-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPath,ItemTypeochValueför cmdletenNew-Itemgenom att implementera metoden System.Management.Automation.Provider.ContainerCmdletProvider.NewItemDynamicParameters*.New-ItemPropertycmdlet – Du kan definiera dynamiska parametrar som utlöses av cmdletenPath,Name,PropertyTypeochValueparametrar för cmdletenNew-ItemPropertygenom att implementera System.Management.Automation.Provider.IDynamicPropertyCmdletProvider.NewPropertyDynamicParameters*-metoden.New-PSDrivecmdlet – Du kan definiera dynamiska parametrar som utlöses av objektet System.Management.Automation.PSDriveInfo som returneras av cmdletenNew-PSDrivegenom att implementera metoden System.Management.Automation.Provider.DriveCmdletProvider.NewDriveDynamicParameters*.Remove-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochRecursei cmdletenRemove-Itemgenom att implementera metoden System.Management.Automation.Provider.ContainerCmdletProvider.RemoveItemDynamicParameters*.Remove-ItemPropertycmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochNameför cmdletenRemove-ItemPropertygenom att implementera System.Management.Automation.Provider.IDynamicPropertyCmdletProvider.RemovePropertyDynamicParameters*-metoden.Rename-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochNewNameför cmdletenRename-Itemgenom att implementera metoden System.Management.Automation.Provider.ContainerCmdletProvider.RenameItemDynamicParameters*.Rename-ItemProperty– Du kan definiera dynamiska parametrar som utlöses av parametrarnaPath,NameochNewNameför cmdletenRename-ItemPropertygenom att implementera System.Management.Automation.Provider.IDynamicPropertyCmdletProvider.RenamePropertyDynamicParameters*-metoden.Set-Contentcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdletenSet-Contentgenom att implementera System.Management.Automation.Provider.IContentCmdletProvider.GetContentWriterDynamicParameters*-metoden.Set-Itemcmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochValueför cmdletenSet-Itemgenom att implementera metoden System.Management.Automation.Provider.ItemCmdletProvider.SetItemDynamicParameters*.Set-ItemPropertycmdlet – Du kan definiera dynamiska parametrar som utlöses av parametrarnaPathochValueför cmdletenSet-Itemgenom att implementera System.Management.Automation.Provider.IPropertyCmdletProvider.SetPropertyDynamicParameters*-metoden.Test-Pathcmdlet – Du kan definiera dynamiska parametrar som utlöses av parameternPathför cmdletenTest-Pathgenom att implementera metoden System.Management.Automation.Provider.ItemCmdletProvider.InvokeDefaultActionDynamicParameters*.