Мне нужно отправить электронное письмо после выполнения большого процесса с файлом журнала в качестве вложения, чтобы пользователи могли определить любые проблемы. Мы используем log4net для обработки всех наших журналов, и я не смог заставить log4net освободить файл, чтобы его можно было добавить в качестве вложения.
До сих пор я следил за результатами по этому вопросу: Как остановить log4net от регистрации и выпустить последний файл об установке порога appender на «Off», но я продолжаю получать исключение из-за DLL не выпускает файл журнала. Я могу проверить в отладчике, что appender действительно находится в состоянии «Выкл.», Но проводник процесса подтверждает, что мой exe-файл все еще удерживает блокировку файла.
Вот метод, который я получил из связанного вопроса:
private static void SetThreshold(string appenderName, log4net.Core.Level threshold)
{
foreach (log4net.Appender.AppenderSkeleton appender in log4net.LogManager.GetRepository().GetAppenders())
{
if (appender.Name == appenderName)
{
appender.Threshold = threshold;
break;
}
}
}
Любые идеи, как форсировать выпуск этого журнала, были бы очень полезны. Спасибо