IronRuby -参数数量错误



我刚开始使用IronRuby。这是我的测试类:

class Program
    {
        static void Main(string[] args)
        {
            var path = @"C:UsersfraysDesktoptest.rb";
            var engine = Ruby.CreateEngine();
            var scope = engine.Runtime.CreateScope();
            scope.SetVariable("sendNext", new Action<string>(SendNext));
            engine.ExecuteFile(path, scope);
            Console.Read();
        }
        private static void SendNext(string text)
        {
            Console.WriteLine(text);
        }
    }
这是我的测试脚本:
sendNext 'heyyy'

然而,当尝试运行程序时,它抛出一个异常,表示wrong number of arguments (1 for 0),即使该方法明确接受字符串作为参数。

这说明在c#中使用委托调用IronRuby是不可能的,但是你可以直接调用invoke方法。

sendNext.Invoke( 'heyyy')

相关内容

  • 没有找到相关文章