2016-06-24 19 views
0

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)を言って例外がスローされます議論として。

答えて

0

これは可能ではないと言いますが、Calling IronRuby from C# with a delegateを呼び出すことができますが、単にinvokeメソッドを呼び出すことができます。

sendNext.Invoke('heyyy') 
関連する問題