Используя log4net 1.2.11 в .net framework 3.5, это работает:
var fileAppender = new log4net.Appender.FileAppender(layout, "check.log", true);
log4net.Config.BasicConfigurator.Configure(fileAppender);
log4net.LogManager.GetLogger(typeof(Program)).Info("constructor");
Кроме того, что выдает предупреждение:
Предупреждение 1 'log4net.Appender.FileAppender.FileAppender (log4net.Layout.ILayout,
string, bool) 'устарела: вместо этого используйте конструктор по умолчанию и
установить свойства Layout, File & AppendToFile
Но если я использую свойства, это не работает
var fileAppender = new log4net.Appender.FileAppender()
{ Layout = layout, File = "check.log", AppendToFile = true };
log4net.Config.BasicConfigurator.Configure(fileAppender);
log4net.LogManager.GetLogger(typeof(Program)).Info("prop1");
То есть в файл ничего не записывается. Я также попробовал полный путь ("c: \ check.log") и присвоение свойств после создания приложения с конструктором по умолчанию.
Что я делаю не так?