2012-01-12 1 views
0

Comment puis-je définir la valeur d'une variable dans une portée IronPython sur None à partir de C# en utilisant ScriptScope.SetVariable sans utiliser ScriptEngine.ExecuteAndWrap("x = None", scope)? La variable doit-elle déjà être définie dans ScriptEngine/ScriptScope? Cet exemple n'a pas fonctionné:Définition d'une variable IronPython sur Aucune

// Note: "scope" is the ScriptScope variable assigned beforehand 

scope.SetVariable("x", null); 

recherche sur le Web a trouvé ce lien connexe, mais il n'a pas fourni une solution:
http://lists.ironpython.com/pipermail/users-ironpython.com/2009-June/010605.html

+0

La variable n'a pas nécessairement besoin d'exister dans la portée avant d'appeler SetVariable. –

Répondre

1

Pour autant que je sais le mot-clé object est juste un alias pour System.Object, mais J'ai trouvé que coulée null à System.Object travaillé dans certains cas.

scope.SetVariable("x", (Object)null); 
+0

Merci! J'ai découvert que la var n'a pas nécessairement besoin d'exister dans la portée avant d'appeler SetVariable. –

+0

Travaillez comme un charme –