【发布时间】:2012-01-13 14:22:31
【问题描述】:
在 Razor ViewEngine 中调用 Parse 方法时,编译错误将作为包含错误列表的 TemplateComplilationException 引发。这些错误指的是临时文件名,但这些文件在您访问它们之前已被删除。
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 的 Razor 引擎“独立”。当我拨打Parse 时,我希望获得尽可能多的详细信息以显示给用户。
【问题讨论】:
-
您是否尝试过添加
FileSystemWatcher以将.cs 文件从执行/编译目录中复制出来? -
无法让 FileSystemWatcher 为我触发。
标签: c# .net razor razorengine