Это сводится к простому вопросу о том, почему Console.WriteLine ("asdfasdf") не получает вывод в окно вывода в Visual Studio 2010 ??? поскольку мой не выводится там при выполнении тестов.
У меня есть файл конфигурации журнала, который, когда я запускаю мою программу в режиме отладки, записывает в файл И регистрирует оба окна вывода VS. Этот же файл, когда я использую его вместе с журналами MS Test, указывает на указанный мной файл, который заканчивается как TestResults / xxxx / example.log, НО не регистрируется в области вывода VS. Это почему? Это очень очень раздражает, так как мне нравится использовать вывод для прокрутки журналов.
Мой конфиг в log4net, который работает в одном, а не в другом
<log4net>
<!-- A1 is set to be a ConsoleAppender -->
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<!-- A1 uses PatternLayout -->
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-4timestamp [%thread] %-5level %logger %ndc - %message%newline" />
</layout>
</appender>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="example.log" />
<appendToFile value="true" />
<maximumFileSize value="100KB" />
<maxSizeRollBackups value="2" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
</root>
</log4net>
Я называю это в моем тестовом примере
// Set up a simple configuration that logs on the console.
//BasicConfigurator.Configure();
XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo("log4net.config"));
Log.Info("testing");
Я вызываю это в моей программе, потому что она фактически перемещена в bin \ Debug \ conf dir ....
XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo("conf/log4net.config"));
log.Info("Starting the toolbar application");
Для меня абсолютно бессмысленно, почему это не сработает?
Спасибо,
Декан