Я использую командлеты powershell в своем коде C # для взаимодействия с виртуальными машинами Hyper-V.Я специально пытаюсь заполучить загрузчик виртуальной машины.У меня нет проблем с запуском команды Get-Firmware, но я не могу разобрать возвращаемый объект и получить необходимую информацию о порядке загрузки.
private void Test()
{
using (Runspace runspace = RunspaceFactory.CreateRunspace())
{
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();
Command command = new Command("Get-VMFirmware");
command.Parameters.Add("VMName", "MachineName");
pipeline.Commands.Add(command);
PSObject result = pipeline.Invoke().First();
var bootorder = result.Properties["BootOrder"].Value;
}
}
Согласно документации (и когда я смотрю назначение result.Properties ["BootOrder"]. Значение в локальных файлах) Я считаю, что моя переменная bootorder должна быть Microsoft.HyperV.PowerShell.VmBootObject [], но я не могу найти это пространство имен, поэтому не могу его привестив качестве таких.Итак, bootorder - это объект типа, и я не могу получить от него никакой информации.Что я тут не так делаю?