asp.net - tutorial - ironpython visual studio 2017
Hacer referencia a los ensamblajes de "importaciĆ³n" de Python al llamar desde IronPython en C# (1)
Una forma alternativa de hacer esto:
dynamic sys = scriptEngine.ImportModule("sys");
sys.path.append(somePath);
Soy un noob completo cuando se trata de IronPython. Necesito llamar a un script py desde un sitio web ASP.NET y tener el siguiente código:
var ipy = IronPython.Hosting.Python.CreateRuntime();
dynamic test = ipy.UseFile(Server.MapPath(@"~/python/test.py"));
test.DoWork();
La versión de IronPython que estoy usando es 2.7.
El archivo de Python de terceros al que debo llamar tiene las siguientes directivas de importación:
import sys
from array import *
from subprocess import *
Estoy recibiendo el error "No hay módulo llamado subproceso". He copiado el archivo subprocess.py del directorio Lib de instalación de IronPython, pero ¿asumo que necesito enlazarlo con el código C #?
Gracias.
EDITAR:
Encontré la solución:
ScriptEngine scriptEngine = Python.CreateEngine();
var sp = scriptEngine.GetSearchPaths();
sp.Add(Server.MapPath(@"~/python/lib"));
scriptEngine.SetSearchPaths(sp);
var scope = scriptEngine.Runtime.ExecuteFile(Server.MapPath(@"~/python/test.py"));
Si alguien tiene algún comentario / mejora, siéntase libre de elaborar ya que estoy en un lugar nuevo con todo este malarky de Python / IronPython.