вы можете выполнять скрипт / команды powershell непосредственно из вашего проекта c#. вам нужно добавить ссылку на system.managment.automation dll в ссылках проекта.
пример: функция, которая будет принимать скрипт в виде строки, выполнять его и затем возвращать результат:
private string RunScript(string script)
{
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
Pipeline pipline = runspace.CreatePipeline();
pipline.Commands.AddScript(script);
pipline.Commands.Add("Out-String");
Collection<PSObject> results = pipline.Invoke();
runspace.Close();
StringBuilder stringBuilder = new StringBuilder();
foreach(PSObject pSObject in results)
{
stringBuilder.AppendLine(pSObject.ToString());
}
return stringBuilder.ToString();
}
вызов функции может быть таким:
Console.WriteLine(RunScript("Your Powershell Script"));
Вы можете ознакомиться с полными примерами кода на github - PowershellCommand-CSharp