我想将自定义类型的参数传递给我的cmdlet。我声明参数如下:
[Parameter(Position = 1)]
public StoreIdParameter Identity { get; set; }
但是当我使用参数运行cmdlet时(像这样:Get-Store VS)我得到一个例外:
无法绑定参数'Identity'。 无法转换类型的“VS”值 键入“System.String” “R.Management.StoreIdParameter”。
我创建了一个StoreIdParameter的构造函数,它接受String但它没有帮助。它应该是从字符串到我的类型的某种类型转换器吗?
答案 0 :(得分:0)
我找到了解决方案。那是我的错 - 我的构造函数只在基类中接受字符串参数。我已经使用字符串参数将构造函数添加到派生类(StoreIdParameter),并且Powershell可以通过调用适当的构造函数来创建此类的实例