Невозможно вызвать Python в C # через Ironpython - PullRequest
0 голосов
/ 12 июня 2019

Мне нужно вызвать функцию python внутри моего кода на c # wpf. Я установил Ironpython и добавил пути. Во время выполнения он показывает неверный синтаксис в строке

source.Execute(scope); 

Попробовал другой способ, как это

engine.ExecuteFile(@"D:\Ryan\WpfApp1\WpfApp1\module2.py", scope);` 

но опять та же ошибка.

using IronPython.Hosting;
using IronPython.Modules;
using Microsoft.Scripting.Hosting;

        ScriptEngine engine = Python.CreateEngine();
        string pythonScriptPath = System.IO.Path.GetDirectoryName(System.IO.Path.GetDirectoryName(System.IO.Directory.GetCurrentDirectory()));
        ScriptSource source = engine.CreateScriptSourceFromFile(pythonScriptPath + "/module2.py");
        ScriptScope scope = engine.CreateScope();

        ICollection<string> paths = engine.GetSearchPaths();
        paths.Add("..\\..\\Library");
        engine.SetSearchPaths(paths);

        source.Execute(scope);
//tried another way
        engine.ExecuteFile(@"D:\Ryan\WpfApp1\WpfApp1\module2.py", scope);

Модуль Python работает правильно, но при выполнении в Visual Studio выдается Ошибка в виде неверного синтаксиса. Пожалуйста, помогите мне.

...