How to use Python in .NET-Core application? I need this for the purposes of Hackathon so the solution don't have to be 'elegant'. I've read that it's impassible to run Python scripts directly because there exists only library IronPython for standard ASP.NET but no for .NET-Core. So what is the simplest way to use Python scripts? (Because it's hackathon it's ok to use even PHP server or selenium etc. only to execute script)
Try this
public class RunCmd
{
public string Run(string cmd, string args)
{
ProcessStartInfo start = new ProcessStartInfo();
start.FileName = "python";
start.Arguments = string.Format("\"{0}\" \"{1}\"", cmd, args);
start.UseShellExecute = false;// Do not use OS shell
start.CreateNoWindow = true; // We don't need new window
start.RedirectStandardOutput = true;// Any output, generated by application will be redirected back
start.RedirectStandardError = true; // Any error in standard output will be redirected back (for example exceptions)
using (Process process = Process.Start(start))
{
using (StreamReader reader = process.StandardOutput)
{
string stderr = process.StandardError.ReadToEnd(); // Here are the exceptions from our Python script
string result = reader.ReadToEnd(); // Here is the result of StdOut(for example: print "test")
return result;
}
}
}
}
Then
var res = new RunCmd().Run("your_python_file.py","params");
Console.WriteLine(res);