5

谁能告诉我如何向我的自定义 C# cmdlet 添加一个参数,该参数是一个 Hashtable/StringDictionary,以便我可以以类似于以下方式调用我的 cmdlet:

 CustomCmdlet -File $someFilePath `
              -StringDictionary/HashtableParameter @{
                            "name1"="value1"
                            "name2"="value2"
                            "name3"="value3"
                            ...
                       }

我根本找不到任何可以清楚简单地解释如何执行此操作的文档/示例,或者它甚至可以用于自定义 cmdlet。

我可以使用:

    [Parameter(Mandatory = false, Position = 9)]
    public Dictionary<string,string> FieldValues { get; set; }

    [Parameter(Mandatory = false, Position = 9)]
    public HashTable FieldValues { get; set; }

    ...

或者是其他东西?

亲切的问候

4

1 回答 1

6

您可以使用以下

public Hashtable[] SearchCriteria { get; set; }

具有类似的功能

Start-Process calc -PassThru | Get-UIAWindow | Get-UIAButton -SearchCriteria @{automationid="13*";name="[3-5]"},@{name="c*"},@{name="a*"},@{isenabled="false"} | Read-UIAControlName

输出是

4

清除条目

5

清除

3

添加

最大化

于 2012-10-02T19:33:31.743 回答