IronPython и C # - доступ скриптов к объектам C # - PullRequest
4 голосов
/ 10 апреля 2009

Рассмотрим код ниже:

ScriptRuntimeSetup setup = Python.CreateRuntimeSetup(null);
ScriptRuntime runtime = new ScriptRuntime(setup);
ScriptEngine engine = Python.GetEngine(runtime);
ScriptScope scope = engine.CreateScope();

scope.SetVariable("message", "Hello, world!");
string script = @"print message";
ScriptSource source = scope.Engine.CreateScriptSourceFromString(script, SourceCodeKind.Statements);
source.Execute();

Этот код выдает следующее исключение:

Microsoft.Scripting.Runtime.UnboundNameException было обработано сообщение = "имя 'message' не определено "

Чего мне не хватает?

Ответы [ 2 ]

7 голосов
/ 10 апреля 2009

Это должно быть "source.Execute (scope);" вместо "source.Execute ();"

3 голосов
/ 17 апреля 2009
...