2010-07-26 5 views
2

Нечетный этот.log4net для NHibernate ничего не пишет в трассировку ASP.NET

Я использую NHibernate с одним веб-сайтом. Я настроил log4net, чтобы показать мне все SQL и ошибки в трассировке. Все работает плавно.

Я начинаю использовать NHibernate на другом веб-сайте - такое же решение, основанное на одних и тех же библиотеках классов. Я скопировать конфигурационные данные в web.config с одного сайта на другой:

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> 
<log4net> 
    <appender name="AspNetTraceAppender" type="log4net.Appender.AspNetTraceAppender" > 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> 
     </layout> 
    </appender> 
    <logger name="NHibernate.SQL" additivity="false"> 
     <level value="DEBUG" /> 
     <appender-ref ref="AspNetTraceAppender" /> 
    </logger> 
    <root> 
     <level value="ERROR"/> 
     <appender-ref ref="AspNetTraceAppender"/> 
    </root> 
    </log4net> 

Очевидно, что новый веб-сайт также содержит ссылку на log4net.dll.

Но на новом веб-сайте я не получаю выход NHibernate в трассировке!

Насколько я знаю, с log4net вы просто ссылаетесь на dll, настраиваете конфигурацию и выходите.

Может ли кто-нибудь подумать, что мне может не хватать?

Благодаря

Дэвид

ответ

3

Похоже, вы забываете инициализировать его.

Посмотрите на разделе комментариев этого поста:

Logging NHibernate SQL with log4net in ASP.NET

+1

Вы абсолютно правы, и мне нужно стрелять. Спасибо. – David

Смежные вопросы