IronRuby CreateScriptSourceFromFile找不到文件

时间:2012-01-12 20:53:51

标签: c# interop ironruby

我有一个非常简单的程序,用于从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:\sbgit\IRFromCS\IronRubyFromCSharp\Ruby\");
                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中引用代码文件的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

http://ironruby.codeplex.com/releases/view/60511#DownloadId=217152下载zip版本

使用zip版本dll(IronRuby.dll和Microsoft.Scripting.dll)