我读过当您将对象传递到名为 with 的脚本块时,它们会被序列化start-job
。这似乎适用于字符串和事物,但我正在尝试传递一个xml.XmlElement
对象。我确定该对象XMLElement
在我调用脚本块之前是一个,但在工作中,我收到此错误:
Cannot process argument transformation on parameter 'node'. Cannot convert the "[xml.XmlElement]System.Xml.XmlElement"
value of type "System.String" to type "System.Xml.XmlElement".
+ CategoryInfo : InvalidData: (:) [], ParameterBindin...mationException
+ FullyQualifiedErrorId : ParameterArgumentTransformationError
+ PSComputerName : localhost
那么,我该如何XmlElement
挽回。有任何想法吗?
对于它的价值,这是我的代码:
$job = start-job -Name $node.LocalName -InitializationScript $DEFS -ScriptBlock {
param (
[xml.XmlElement]$node,
[string]$folder,
[string]$server,
[string]$user,
[string]$pass
)
sleep -s $node.startTime
run-action $node $folder $server $user $pass
} -ArgumentList $node, $folder, $server, $user, $pass