在代码(c#)中远程调用Exchange Powershell命令时出错

在代码(c#)中远程调用Exchange Powershell命令时出错,powershell,sdk,Powershell,Sdk,我正在发布问题和解决方案。我很想在半天以前知道这件事 错误: “无法从外部调用WriteObject和WriteError方法 BeginProcessing、ProcessRecord和EndProcessing的重写 方法,并且仅来自同一线程。请验证cmdlet 正确拨打这些电话,或者请与Microsoft支持部门联系 服务。” 错误: foreach(args.cp中的KeyValuePair cp) { command.AddCommand(args.command); command.

我正在发布问题和解决方案。我很想在半天以前知道这件事

错误: “无法从外部调用WriteObject和WriteError方法 BeginProcessing、ProcessRecord和EndProcessing的重写 方法,并且仅来自同一线程。请验证cmdlet 正确拨打这些电话,或者请与Microsoft支持部门联系 服务。”

错误:
foreach(args.cp中的KeyValuePair cp)
{
command.AddCommand(args.command);
command.AddParameter(cp.Key,cp.Value);
}
解决方案:
command.AddCommand(args.command);
foreach(args.cp中的KeyValuePair cp)
{
command.AddParameter(cp.Key,cp.Value);
}
这个错误对我来说仍然没有意义。我开始关注PS异步的东西


希望这能帮助其他人…

你应该将解决方案转化为答案。如何解决?我看不出不张贴至少80个字符的方法。应该在“张贴答案”按钮的正上方有一个文本框。在StackOverflow上,发布您自己问题的答案并将其标记为已接受是完全可以接受的。
foreach (KeyValuePair<string, string> cp in args.CP)
{
   command.AddCommand(args.Command);
   command.AddParameter(cp.Key, cp.Value);
}
command.AddCommand(args.Command);
foreach (KeyValuePair<string, string> cp in args.CP)
{
    command.AddParameter(cp.Key, cp.Value);
}