Exchange管理Powershell - 如何在此处获取Name属性的值?

时间:2010-07-20 13:23:56

标签: .net powershell

如何才能获得名称变量的返回值?

RunspaceConfiguration rsConfig = RunspaceConfiguration.Create(); PSSnapInException snapInException = null; PSSnapInInfo info = rsConfig.AddPSSnapIn(“Microsoft.Exchange.Management.PowerShell.Admin”,out snapInException); Runspace myRunSpace = RunspaceFactory.CreateRunspace(rsConfig); myRunSpace.Open();

//创建管道并将其提供给脚本文本 Pipeline pipeline = myRunSpace.CreatePipeline();

string strScript =“Get-MailboxDatabase”;

//将命令添加到管道的Commands集合中。 pipeline.Commands.AddScript(strScript)

收集结果= pipeline.Invoke();

1 个答案:

答案 0 :(得分:1)

有几种不同的方法可以做到这一点。改变你的剧本:

string strScript = "Get-MailboxDatabase | select -expand name"

这样,results[0].BaseObject将是一个纯字符串。或者,您可以从包装邮箱数据库实例的PSObject中检索Name属性:

string name = results[0].Properties["Name"].Value

或者您可以通过将results[0].BaseObject强制转换为此类型并以强类型方式访问该属性,从邮箱数据库中获取它(抱歉,我不知道实际上是什么)。

-Oisin