我正在尝试使用带管道参数的$args
数组。
函数需要的参数的任意数量(例如参数0)的第一,流水线参数以下:
function rpt-params {
param (
[Parameter(ValueFromPipeline=$true,Position=0,Mandatory=$true)][CrystalDecisions.CrystalReports.Engine.ReportDocument]$reportDocument
)
try {
write-host "count: " $args.count
#TODO process args
}
catch [Exception] {
write-host $_.Exception
}
finally {
return $reportDocument
}
}
尝试调用的函数产生,读取“RPT-PARAMS一个错误:甲参数不能被发现匹配参数名'param0'。“:
...
# syntax 0
rpt-params $rpt -param0 "mb-1" -param1 "me-1"
...
...
# syntax 1; explicitly naming the first parameter
rpt-params -reportDocument $rpt -param0 "mb-1" -param1 "me-1"
...
是我的语法问题还是与使用流水线参数有关?