Я пишу на C# программу, которая с помощью библиотеки log4net ведет лог в отдельный файл. Когда лог-файл переполняется, он должен быть удален. Но, к сожалению, из-за того, что этот файл открыт в приложении, я не могу его удалить. При вызове метода File.Delete из класса System.IO.File ничего не происходит, файл не удаляется, а лог продолжает записываться. Как можно решить эту проблему?
Попробуйте добавить в config файл:
<lockingmodel type="log4net.Appender.FileAppender+MinimalLock"/>
Это должно помочь разлочить файл для удаления.
А зачем вы проводите такие манипуляции в коде, когда log4net умеет это делать из коробки?
<maximumFileSize value="1MB" />
Сборка персонального компьютера от Artline: умный выбор для современных пользователей