У меня есть файл сценария python, который отлично работает из IDE spyder. Я хочу вызвать и использовать его вывод из приложения C#, используя следующий код:
public string Methd2(string script, string pythonPath)
{
string result = string.Empty;
ProcessStartInfo start = new ProcessStartInfo(@"C:/Users/User/AppData/Local/Programs/Python/Python37/python.exe", @"E:/Prediction Model/14/Forecasting/function_call.py");
//start.FileName = @"C:/Users/User/AppData/Local/Programs/Python/Python37/python.exe";
//start.Arguments = @"E:/Prediction Model/14/Forecasting/function_call.py"; ;
start.UseShellExecute = false;
start.RedirectStandardOutput = true;
using (Process process = Process.Start(start))
{
result =process.StandardOutput.ReadToEnd();//First Technique...
}
using (Process process = Process.Start(start))
{
using (StreamReader reader = process.StandardOutput)
{
result = reader.ReadToEnd();//Second Technique...
process.WaitForExit();
Console.Write(result);
}
}
return result;
}
Строка результата всегда остается пустой ... Я использовал различные настройки пути к python .exe и файл script.py как 1), используя @ в начале пути. 2) добавление косой черты (/) в путь 3) размещение косой черты () в пути
, но ничего не сгенерировало требуемый вывод ... Я не хочу использовать Iron python ...