我在控制檯應用程序中使用Razor Engine from CodePlex。當我在VS 2010 IDE中以調試模式運行時,一切正常。在上面的CodePlex頁面的示例中,即使是簡單的雙線程也會失敗。所以我不認爲這是代碼。異常消息是通用的,因爲它可以:在控制檯應用程序中使用Razor引擎
RazorEngine.Templating.TemplateCompilationException: Unable to compile template.
所有這一切都被稱爲(參考文獻部分)的DLL是那裏的工作目錄與作爲控制檯應用程序本身的.exe文件一起。我不會把整個列表在這裏,但這裏有一些我認爲是相關的:的System.Web,System.Web.Mvc,System.Web.Razor,RazorEngine,等我不我不認爲DLL如系統,System.Xml等甚至需要在那裏,但爲了消除任何意外,我無論如何複製它們。關鍵是什麼是在參考文獻部分複製到exe文件的工作目錄。令人驚訝的是它仍然不起作用。我如何追蹤丟失的東西或者只是讓這個東西起作用?
編輯我剛剛創建了一個裸骨控制檯應用程序來演示我的觀點。這是整個程序。正如我所提到的,它在IDE內而不是在shell中工作正常。
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();
}
}
}