irh*_*irh 5 c# powershell optional-parameters
我有一个ac#方法我从dll加载默认的可选字符串参数null
.例如
public void foo(string path, string new_name = null, bool save_now = true)
{
if(name == null)
new_name = Path.GetFileNameWithoutExtension(path);
...
if(save_now)
Save();
}
Run Code Online (Sandbox Code Playgroud)
我想在一个powershell脚本中调用它,而不是为new_name
一个for 提供一个值save_now
.根据这个看似非常相似的问题,我试过了
$default = [type]::Missing
$obj.foo($path, $default, $false)
Run Code Online (Sandbox Code Playgroud)
但这导致new_name
被设置"System.Reflection.Missing"
在函数内.
另外我试过了
$obj.foo($path, $null, $false)
Run Code Online (Sandbox Code Playgroud)
但这会导致new_name
设置为空字符串,但仍然没有null
.我可以将默认设置为空字符串,但我想知道是否有任何好方法可以使用默认值.
归档时间: |
|
查看次数: |
2360 次 |
最近记录: |