小编Gen*_*ers的帖子

从IronPython调用C#方法

我正在构建一个可以与IronPython自动化的C#WebKit Web浏览器,以帮助进行质量保证测试。我将使用IronPython创建测试计划,该计划将运行许多浏览器方法,提供参数并评估结果。

IronPython的大多数文档都说明了如何使用C#调用IronPython方法,但是我已经弄清楚了如何为方法设置参数,以及如何检索方法的返回值,但不能从同一方法中返回。您将在下面的示例中注意到,我将参数传递给一个方法,该方法依次设置一个类成员变量,然后使用另一个方法检索该值。

谁能建议一个更优雅的图案?

using System;
using System.Windows.Forms;
using IronPython.Hosting;
using Microsoft.Scripting;
using Microsoft.Scripting.Hosting;

namespace PythonScripting.TestApp
{

 public partial class Form1 : Form
 {
   private ScriptEngine m_engine = Python.CreateEngine();
   private ScriptScope m_scope = null;

   //used to call funcs by Python that dont need to return vals
   delegate void VoidFunc(string val);

   public Form1()
   {
      InitializeComponent();
   }

   private void doSomething()
   {
       MessageBox.Show("Something Done", "TestApp Result");
   }

   private string _rslt = "";

   private string getSomething()
   {
      return _rslt;
   }

   private void setSomething(string val) …
Run Code Online (Sandbox Code Playgroud)

c# ironpython

1
推荐指数
1
解决办法
8472
查看次数

标签 统计

c# ×1

ironpython ×1