我希望在我的.NET项目中使用IronRuby作为脚本语言(例如Lua)。例如,我希望能够从Ruby脚本订阅在宿主应用程序中触发的特定事件,并从中调用Ruby方法。
我正在使用以下代码实例化IronRuby引擎:
我正在使用以下代码实例化IronRuby引擎:
Dim engine = Ruby.CreateEngine()
Dim source = engine.CreateScriptSourceFromFile("index.rb").Compile()
' Execute it
source.Execute()
假设 index.rb 包含:
subscribe("ButtonClick", handler)
def handler
puts "Hello there"
end
我该如何实现以下功能:
- 如何使主机应用程序定义的C#方法Subscribe能够从index.rb中访问?
- 如何从主机应用程序中延迟调用handler方法?
searchPaths
集合,如果尝试添加到其中会引发异常。您需要创建自己的集合,然后复制值。 - ashes999