Я выполняю Powershell в коде C # с использованием объекта System.Management.Automation.Powershell.Теперь я нацеливаюсь на команду, которая принимает PSListModifier в качестве параметра.
Теперь, если я помещу такой PSListModifier в CommandParameter, мне будет отказано в:
Невозможно привести объект квведите 'System.Management.Automation.PSListModifier', чтобы ввести 'System.String'
Вот соответствующий бит кода:
PowerShell ps = PowerShell.Create();
Command myCommand = new Command("MyCommand");
PSListModifier<string> members = new PSListModifier<string>();
members.Add.Add("value to add");
members.Remove.Add("value to remove");
CommandParameter param = new CommandParameter("MyParameter", members);
myCommand.Parameters.Add(param);
ps.Commands.AddCommand(myCommand);
IAsyncResult beingRes = ps.BeginInvoke();
PSDataCollection<PSObject> objects = await Task.Factory.FromAsync(beingRes, ps.EndInvoke).ConfigureAwait(false);
Collection<PSObject> items = objects.ReadAll();