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
と呼ぶとき、できるだけ多くの詳細情報をユーザに表示したいと思っています。
実行/コンパイルディレクトリから.csファイルをコピーするための 'FileSystemWatcher'を追加しようとしましたか? – arootbeer
私のためにFileSystemWatcherを起動できませんでした。 – Mick