0

我正在从 c# 运行一个 powershell 命令,我通过 web 服务调用它

这是命令Set-MailboxAutoReplyConfiguration -identity

这是我的代码。

string command = "Set-MailboxAutoReplyConfiguration -identity " + user;

我通过网络服务传递的用户。

但是,当我运行它时,我得到了这个错误。

System.Management.Automation.RemoteException: The term 'Set-MailboxAutoReplyConfiguration -identity babbey' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

我不确定 ' 在我的命令之前和之后来自哪里。但是,如果我取出 +user 部分,它工作正常。所以我的问题是命令变量中的变量。

4

1 回答 1

2

如果使用PowerShell.AddCommand,则只需指定命令名称,例如Set-MailboxAutoReplyConfiguration. 然后在命令上调用 AddParameter 以添加参数,例如:

var ps = PowerShell.Create();
ps.AddCommand("Set-MailboxAutoReplyConfiguration");
ps.AddParameter("Identity", user);
于 2012-09-05T21:08:57.533 回答