У меня есть скрипт powershell, который я хочу вызвать с веб-страницы. У меня есть код c #, и он работает, но скрипт в конечном итоге выполняет некоторые задачи sql, которые не являются быстрыми в ответ. У него нет результатов, которые я хочу отобразить на веб-странице, поэтому я не могу заставить веб-страницу запустить сценарий и затем двигаться дальше. В нижней части браузера отображается сообщение «ожидание сервера ...», хотя возвращать нечего. В конце концов страница перестает работать.
Я пытался использовать опцию InvokeAsync (), но она все еще дает мне те же результаты. Будет ли лучше использовать Process.Start () для вызова скрипта Powershell и дальнейшего продвижения?
Спасибо,
Грег
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
string cmdArg = scriptfile + " " + TextBox4.Text + " " + RadioButtonList1.SelectedValue;
//Collection<PSObject> psresults;
using (Pipeline pipeline = runspace.CreatePipeline())
{
pipeline.Commands.AddScript(cmdArg);
//psresults = pipeline.Invoke();
pipeline.InvokeAsync(); // InvokeAsync calls it as a background process so it won't make the web page timeout.
}
runspace.Close();