IronRuby - 参数数量错误

时间:2016-06-24 09:20:50

标签: ironruby

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

class Program
    {
        static void Main(string[] args)
        {
            var path = @"C:\Users\frays\Desktop\test.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),即使该方法肯定会将一个字符串作为参数。

1 个答案:

答案 0 :(得分:0)

这表示不可能Calling IronRuby from C# with a delegate,但你可以调用invoke方法。

sendNext.Invoke( 'heyyy')