2009-04-10 6 views
4

Tenir compte le code suivant:IronPython et C# - Script accès à C# Objets

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(); 

Ce code donne l'exception suivante:

Microsoft.Scripting.Runtime.UnboundNameException était unhandled message = » nom 'message' n'est pas défini "

Qu'est-ce qui me manque?

Répondre

7

Il devrait être "source.Execute (scope);" au lieu de "source.Execute();"