Использование Razor Engine в консольном приложении

Я использую Razor Engine от CodePlex в консольном приложении. Когда я запускаю в режиме отладки в VS 2010 IDE, все работает. Из оболочки даже простая 2-строчная строка в примере на вышеуказанной странице CodePlex не работает. Поэтому я не думаю, что дело в коде. Сообщение об исключении настолько общее, насколько это возможно:

RazorEngine.Templating.TemplateCompilationException: Unable to compile template.

Все библиотеки DLL, на которые есть ссылки (в разделе References), находятся в рабочем каталоге вместе с .exe, который является самим консольным приложением. Я не буду приводить здесь весь список, но вот некоторые из них, которые я считаю уместными: System.Web, System.Web.Mvc, System.Web.Razor, RazorEngine, etc. Я не думаю, что DLL, такие как System, System.Xml и т.д. вообще должны быть там, но чтобы не было сюрпризов, я все равно скопировал их туда. Суть в том, что все, что находится в разделе References, копируется в рабочий каталог, где находится exe. Удивительно то, что он по-прежнему не работает. Как я могу выяснить, чего не хватает или просто заставить эту штуку работать?

Edit Я только что создал консольное приложение на голых костях, чтобы продемонстрировать свою точку зрения. Вот вся программа. Как я уже говорил, она работает нормально из IDE, но не в оболочке.

using System;
using RazorEngine;

namespace RazorEngineTest
{
    public class Program
    {
        public static void Main(string[] args)
        {            
            string template = "Hello @Model.Name! Welcome to Razor!";
            string result = Razor.Parse(template, new { Name = "World" });
            Console.WriteLine(result);
            Console.ReadLine();
        }
    }
}

7
задан Kevin Le - Khnle 3 December 2011 в 15:37
поделиться