IronRuby, как сделать так, чтобы файл ruby ​​выполнялся из обычного каталога проекта C#, а не из папки bin\debug?

Найти правильный заголовок для моего вопроса было нелегко, пожалуйста, не стесняйтесь отредактировать при необходимости. Сейчас:

В следующем коде программа вылетает при запуске.

using System;
using IronRuby;
using IronRuby.Runtime;

namespace IronRuby_Test_03
{
    class Program
    {
        public static void Main(string[] args)
        {
            var engine = Ruby.CreateEngine();
            engine.ExecuteFile("Ruby_Test.rb");
            dynamic ruby = engine.Runtime.Globals;
        }
    }
} 

По словам отладчика, причина вполне очевидна,

"Не удалось найти файл" C:\Documents and Settings\DEVELOPER\Desktop\IronRuby_Test_03\lkhhytu\bin\Debug\Ruby_Test.rb""

, Программа ожидает, что файл находится в каталоге bin \ debug, и, конечно, когда я перемещаю файл туда, программа работает правильно.

Однако не очень удобно размещать файлы проекта в этой папке bin \ debug, и это делает управление немного неловким. Итак, мой вопрос сейчас, есть ли способ заставить программу работать нормально и иметь 'Ruby_Test.rb' в главном каталоге проекта среди всех других обычных файлов проекта?

2 ответа

Решение

Это предполагаемое поведение. Перейдите к свойствам проекта в разделе "Отладка" и установите "Рабочий каталог" в качестве директории вашего проекта.

Свойства проекта для проекта CS (Visual Studio 2012 Express

Вам придется сделать это один раз для каждой конфигурации (обычно "Отладка" и "Выпуск").

В VS вы можете установить свойства ваших файлов Ruby и скопировать их в каталог bin вместе с вашими сборками. Таким образом, вы автоматически копируете нужные файлы в любую отладку или выпуск конфигурации.

Другие вопросы по тегам