在PowerShell中参数化默认值(C#cmdlet)

时间:2011-02-08 08:39:34

标签: c# powershell cmdlets

我正在使用普通的C#设计一个cmdlet。是否可以为参数定义默认值?

脚本cmdlet:

[Parameter] [string] $ParameterName = "defaultValue"

哪个是C#的等价物?

[Parameter]
public string ParameterName { get; set; }

2 个答案:

答案 0 :(得分:8)

使用自动实现的属性,您不能。 您需要创建实际的getter和setter。

这样的事情:

private string _ParameterName = "defaultvalue";

[Parameter]
public string ParameterName 
{
     get
     {
          return _ParameterName ;
     }
     set
     {
         _ParameterName  = value;
     }
}

答案 1 :(得分:3)

自C#6.0发布以来:

[Parameter]
public string ParameterName { get; set; } = "defaultValue";