Можно ли вызвать метод IronRuby из C# с делегатом в качестве параметра таким образом, чтобы работала yield
?Вызов IronRuby из C# с делегатом
следующее дает мне неправильное количество аргументов (1 для 0) исключение.
Action<string> action = Console.WriteLine;
var runtime = Ruby.CreateRuntime();
var engine = runtime.GetEngine("rb");
engine.Execute(@"
class YieldTest
def test
yield 'From IronRuby'
end
end
");
object test = engine.Runtime.Globals.GetVariable("YieldTest");
dynamic t = engine.Operations.CreateInstance(test);
t.test(action);
+1 для показа, как вызвать делегатов C# из IronRuby. Все еще любопытно, есть ли способ получить код C# от IronRuby. –