我有一个非常简单的程序,旨在从C#调用.rb文件中的代码,但无法正确形成CreateScriptSourceFromFile将接受的文件引用。这是最新的化身:
using System;
using System.Collections.Generic;
using System.IO;
using IronRuby;
using Microsoft.Scripting.Hosting;
namespace IronRubyFromCSharp
{
class Program
{
static void Main(string[] args)
{
try
{
var rubyEngine = Ruby.CreateEngine();
var searchPaths = new List<String>();
searchPaths.Add(".");
searchPaths.Add(@"C:sbgitIRFromCSIronRubyFromCSharpRuby");
rubyEngine.SetSearchPaths(searchPaths);
var scriptSource = rubyEngine.CreateScriptSourceFromFile("hello.rb");
var codeText = scriptSource.GetCode();
Console.WriteLine(codeText);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
Console.ReadLine();
}
}
}
我已经确认该文件存在,并且它包含有效的Ruby代码,但每次执行该文件时,当我尝试执行、编译甚至只是访问代码时,我都会得到一个System.NotImplementedException。
在CreateScriptSourceFromFile中引用代码文件的正确方法是什么?
从下载zip版本http://ironruby.codeplex.com/releases/view/60511#DownloadId=217152
使用zip版本dll(IronRuby.dll和Microsoft.Scripting.dll)