У меня есть неинтерактивное приложение, в котором мне нужно загрузить некоторые строковые поля перед созданием файла журнала. Есть метод, который читает содержимое текстового файла в поле. Если путь не существует, я хочу, чтобы исключение в журнале событий приложения указывало путь, к которому пытались получить доступ. Вот что я попробовал:
try
{
string contents = File.ReadAllText(path);
}
catch (FileNotFoundException)
{
throw new FileNotFoundException(string.Format("Path not found: {0}",path));
}
Когда я запускаю тестовое приложение с этим кодом, текст исключения в окне консоли выглядит так:
Unhandled Exception: System.IO.FileNotFoundException: Path not found: C:\temp\notthere.txt
Однако сведения об исключении, записанные в журнале событий, не включают текст сообщения об исключении:
Application: ConsoleApp3.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileNotFoundException
at ConsoleApp3.Program.Main(System.String[])
Можно ли заставить .NET автоматически регистрировать больше деталей об исключениях, или мне просто нужно добавить код для записи в журнал событий самостоятельно?