當在Razor ViewEngine中調用Parse方法時,會出現編譯錯誤,如TemplateComplilationException,其中包含錯誤列表。這些錯誤引用了臨時文件名,但是在訪問它們之前文件被刪除。Razor ViewEngine臨時編譯.cs文件
static void Main(string[] args)
{
var service = TemplateServiceFactory.CreateTemplateService(Language.CSharp, true);
string result = "";
try
{
result = service.Parse("Hello @DateTime.NowXX ");
}
catch (TemplateCompilationException ex)
{
foreach (var error in ex.Errors)
if (!string.IsNullOrEmpty(error.FileName))
Console.WriteLine(File.ReadAllText(error.FileName));
} // ^^^^ File does not exist!
Console.WriteLine(result);
Console.ReadKey();
}
(有點背景) 我用剃刀引擎「獨立」沒有MVC。當我打電話給Parse
時,我想獲得儘可能詳細的信息以顯示給用戶。
您是否嘗試添加'FileSystemWatcher'來將.cs文件複製到執行/編譯目錄之外? – arootbeer 2012-01-16 16:46:50
無法讓FileSystemWatcher爲我啓動。 – Mick 2014-03-03 23:58:05