Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 0
📖 [Docs]: README pages now use the standard module landing-page format#35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base:main
Are you sure you want to change the base?
Uh oh!
There was an error while loading. Please reload this page.
Changes from all commits
ed856e41b5fb79ab3e3d20be27c12de7780File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,32 +1,26 @@ | ||
| # DynamicParams | ||
| A PowerShell module that makes it easier to use dynamic params. | ||
| ## Prerequisites | ||
| No prerequisites are required to use this module. | ||
| DynamicParams is a PowerShell module that makes it easier to build dynamic parameters. It provides helper | ||
| commands to define individual dynamic parameters and to collect them into the dictionary that a function's | ||
| `dynamicparam` block returns, removing much of the boilerplate normally involved. | ||
| ## Installation | ||
| Provide step-by-step instructions on how to install the module, including any InstallModule commands or manual installation steps. | ||
| Install the module from the PowerShell Gallery: | ||
| ```powershell | ||
| Install-Module -Name DynamicParams | ||
| Install-PSResource -Name DynamicParams | ||
| Import-Module -Name DynamicParams | ||
| ``` | ||
MariusStorhaug marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. MariusStorhaug marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| ## Usage | ||
| Here is a list of example that are typical use cases for the module. | ||
| This section should provide a good overview of the module's capabilities. | ||
| ### Use dynamic parameters in a function | ||
| Use `New-DynamicParam` to define individual dynamic parameters and `New-DynamicParamDictionary` to build the | ||
| dictionary returned from a function's `dynamicparam` block. | ||
| Here is an example of how to use dynamic parameters in a function. | ||
| ### Example: Add dynamic parameters to a function | ||
| ```powershell | ||
| #Requires -Modules DynamicParams | ||
| function Get-Info { | ||
| [CmdletBinding()] | ||
| param () | ||
| @@ -55,63 +49,49 @@ function Get-Info { | ||
| return $DynamicParamDictionary | ||
| } | ||
| ... | ||
| process { | ||
| $process = $PSBoundParameters['Process'] | ||
| $service = $PSBoundParameters['Service'] | ||
| ... | ||
| } | ||
| ... | ||
| } | ||
| ``` | ||
| ### Use dynamic parameters in a function - DSL Style | ||
| ### Example: Define parameters with the DSL style | ||
| Here is an example of how to use dynamic parameters in a function. | ||
| `DynamicParams` is a convenience DSL alias that wraps `New-DynamicParam` and `New-DynamicParamDictionary`: | ||
| ```powershell | ||
| #Requires -Modules DynamicParams | ||
| function Get-Info { | ||
| [CmdletBinding()] | ||
| param () | ||
| dynamicparam { | ||
| DynamicParams @( | ||
MariusStorhaug marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| @{ | ||
| Name = 'Process' | ||
| Alias = 'proc' | ||
| Type = [string] | ||
| ValidateSet = Get-Process | Select-Object -ExpandProperty Name -Unique | ||
| Name = 'Process' | ||
| Alias = 'proc' | ||
| Type = [string] | ||
| ValidateSet = Get-Process | Select-Object -ExpandProperty Name -Unique | ||
| } | ||
| @{ | ||
| Name = 'Service' | ||
| Alias = 'svc' | ||
| Type = [string] | ||
| ValidateSet = Get-Service | Select-Object -ExpandProperty Name -Unique | ||
| Name = 'Service' | ||
| Alias = 'svc' | ||
| Type = [string] | ||
| ValidateSet = Get-Service | Select-Object -ExpandProperty Name -Unique | ||
| } | ||
| ) | ||
| } | ||
| ... | ||
| process { | ||
| $process = $PSBoundParameters['Process'] | ||
| $service = $PSBoundParameters['Service'] | ||
| ... | ||
| } | ||
| ... | ||
| } | ||
| ``` | ||
| ### Use dynamic parameters in a function - Pipeline style | ||
| Here is an example of how to use dynamic parameters in a function. | ||
| ### Example: Build parameters from a pipeline | ||
| ```powershell | ||
| #Requires -Modules DynamicParams | ||
| function Get-Info { | ||
| [CmdletBinding()] | ||
| param () | ||
| @@ -133,33 +113,24 @@ function Get-Info { | ||
| $params | ForEach-Object { New-DynamicParam @_ } | New-DynamicParamDictionary | ||
| } | ||
| ... | ||
| process { | ||
| $process = $PSBoundParameters['Process'] | ||
| $service = $PSBoundParameters['Service'] | ||
| ... | ||
| $variable = $PSBoundParameters['Variable'] | ||
| $environmentVariable = $PSBoundParameters['EnvironmentVariable'] | ||
| } | ||
| ... | ||
| } | ||
| ``` | ||
| ## Documentation | ||
| ## Contributing | ||
| Coder or not, you can contribute to the project! We welcome all contributions. | ||
| Documentation is published at [psmodule.io/DynamicParams](https://psmodule.io/DynamicParams/). | ||
| ### For Users | ||
| Use PowerShell help and command discovery for module details: | ||
| If you don't code, you still sit on valuable information that can make this project even better. If you experience that the | ||
| product does unexpected things, throw errors or is missing functionality, you can help by submitting bugs and feature requests. | ||
| Please see the issues tab on this project and submit a new issue that matches your needs. | ||
| ### For Developers | ||
| If you do code, we'd love to have your contributions. Please read the [Contribution guidelines](CONTRIBUTING.md) for more information. | ||
| You can either help by picking up an existing issue or submit a new one if you have an idea for a new feature or improvement. | ||
| ```powershell | ||
| Get-Command -Module DynamicParams | ||
| Get-Help New-DynamicParam -Examples | ||
| ``` | ||
MariusStorhaug marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| ## Links | ||
| - [about_Functions_Advanced_Parameters | Microsoft Learn](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_functions_advanced_parameters?view=powershell-7.4#dynamic-parameters) | ||
| - [about_Functions_Advanced_Parameters | Microsoft Learn](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_functions_advanced_parameters#dynamic-parameters) | ||
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.