public async Task<IEnumerable<VMItem>> GetVMListAsync(string name) { var psCommand = new PSCommand { Commands = new List<Command>() }; if (!String.IsNullOrEmpty(vmmServerName)) { psCommand.Commands.Add(new Command(String.Format("$Cloud = Get-SCCloud -Name \"{0}\" -VMMServer \"{1}\"", name, vmmServerName), true)); psCommand.Commands.Add(new Command("Get-SCVirtualMachine -Cloud $Cloud", true)); //command = String.Concat(String.Format("$Cloud = Get-SCCloud -Name \"{0}\" -VMMServer \"{1}\"", name, vmmServerName), Environment.NewLine, "Get-SCVirtualMachine -Cloud $Cloud"); } else { psCommand.ScriptCommand = String.Format("Get-SCVirtualMachine -VMMServer \"{0}\"", name); } var objects = await psProvider.ExecuteAsync<PSObject>(psCommand); if (!String.IsNullOrEmpty(psProvider.Error)) { throw new Exception(psProvider.Error); } var mapper = new PSMapper(); return objects.Select(mapper.Map); }
public async Task<IEnumerable<VMItem>> GetStatus(string name) { string command = String.Concat(String.Format(this.mainCommandTemplate, name), Environment.NewLine, "$VM.DynamicMemoryStatus"); var mapper = new PSMapper(); var objects = await this.psProvider.ExecuteAsync<PSObject>(new PSCommand { ScriptCommand = command }); return objects.Select(mapper.Map); }