Я относительно новичок в Mono и пытаюсь добавить возможности сценариев C # в свое приложение. Я нашел это сообщение в блоге Мигеля де Иказа. Чтобы вызвать компилятор C # как сервис, нужно включить Mono.CSharp и использовать класс Evaluator, в частности методы Evaluate или Run. Это задокументировано здесь .
Итак, вот мой пример кода (полученный из других сообщений в блоге в Интернете на эту тему, да, я сделал поиск в Google)
using System;
using Mono.CSharp;
namespace EvalTest
{
public class Test
{
static void Main(string [] args)
{
Mono.CSharp.Evaluator.Evaluate("using System;");
Mono.CSharp.Evaluator.Run("using System;");
}
}
}
И когда мы пытаемся скомпилировать его, я получаю следующие ошибки:
eval.cs(10,19): error CS0234: The type or namespace name `Evaluator' does not exist in the namespace `Mono.CSharp'. Are you missing an assembly reference?
eval.cs(11,19): error CS0234: The type or namespace name `Evaluator' does not exist in the namespace `Mono.CSharp'. Are you missing an assembly reference?
То же самое происходит в Linux и OSX с использованием всех компиляторов Mono, я даже попробовал Silverlight. Я искал stackoverflow для похожих вопросов, все ссылаются на сообщение в блоге Мигеля и некоторые похожие примеры кода. Что мне не хватает? Есть ли какой-нибудь флаг компилятора, который мне нужно добавить? Спасибо за вашу помощь.