目标是获取Exchange 2010站点的最小数据库,因此我尝试从c#运行以下powershell命令,Get-MailboxDatabase -server Exchange2010 -Status | select-object Name,DatabaseSize我正在努力的问题是 – 如何管道Select子句命...
目标是获取Exchange 2010站点的最小数据库,因此我尝试从c#运行以下powershell命令,
Get-MailboxDatabase -server Exchange2010 -Status | select-object Name,DatabaseSize
我正在努力的问题是 – 如何管道Select子句命令.
这是我的尝试,
WSManConnectionInfo wsConnectionInfo = new WSManConnectionInfo(new Uri("https://" + ExchangeSite + "/powershell?serializationLevel=Full"),
"http://schemas.microsoft.com/powershell/Microsoft.Exchange", getCredential());
wsConnectionInfo.AuthenticationMechanism = AuthenticationMechanism.Basic;
wsConnectionInfo.SkipCACheck = true;
wsConnectionInfo.SkipCNCheck = true;
rsRemoteRunspace = RunspaceFactory.CreateRunspace(wsConnectionInfo);
rsRemoteRunspace.Open();
Pipeline pipeLine = rsRemoteRunspace.CreatePipeline();
Collection<PSObject> DatabaSize = null;
Command myCommand = new Command("Get-MailboxDatabase");
myCommand.Parameters.Add("Server", "Exchange2010");
myCommand.Parameters.Add("Status", null);
Command myCommand2 = new Command("Select-Object");
myCommand.Parameters.Add("Name");
myCommand.Parameters.Add("DatabaseSize");
pipeLineMB.Commands.Add(myCommand);
pipeLineMB.Commands.Add(myCommand2);
DatabaSize = pipeLine.Invoke();
但我得到了,
"A parameter cannot be found that matches parameter name 'Name'."
请记住,我不能使用SnapIn,因为代码必须在Exchange服务器上执行cmdlet的客户端计算机上运行.
欢迎任何建议.
编辑
我应用了yamen建议的修复程序,并且可以调用该命令,但是当我尝试获取该值时,我得到:“对象引用未设置为对象的实例.”
请注意,我可以获取Servername和Name的值,但它在DatabaseSize中失败,所以我想没有正确设置’Status’标志,因为这个标志是启用此值的标志.
解决方法:
你的意思是:
Command myCommand2 = new Command("Select-Object");
myCommand2.Parameters.Add("DatabaseSize");
而不是这个:
Command myCommand2 = new Command("Select-Object");
myCommand.Parameters.Add("DatabaseSize");
注意第二行的myCommand2?
无论如何,您可能会发现您实际使用的参数是Property viz:
myCommand2.Parameters.Add("Property", "DatabaseSize");
不止一个:
var props = new string[] { "DatabaseSize", "ServerName", "Name" };
myCommand2.Parameters.Add("Property", props);
本文标题为:c#中的powers powershell命令如何
- 如何使用C# 捕获进程输出 2023-03-10
- Oracle中for循环的使用方法 2023-07-04
- .NET CORE DI 依赖注入 2023-09-27
- c# 模拟线性回归的示例 2023-03-14
- 在C# 8中如何使用默认接口方法详解 2023-03-29
- user32.dll 函数说明小结 2022-12-26
- C# 使用Aspose.Cells 导出Excel的步骤及问题记录 2023-05-16
- Unity3D实现渐变颜色效果 2023-01-16
- WPF使用DrawingContext实现绘制刻度条 2023-07-04
- Unity Shader实现模糊效果 2023-04-27