2

この記事を読みました。そして、このanswer1SOanswer2SOanswer3SO

私がこれまでに行ったこと:

1. AssemblyInfo.cs の最終行で宣言:

    [assembly: log4net.Config.XmlConfigurator(Watch = true)] 

2. app.config に記述

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
  </configSections>

  <log4net>
    <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
      </layout>
    </appender>
    <root>
      <level value="ALL"/>
      <appender-ref ref="EventLogAppender"/>
    </root>
  </log4net>
</configuration>

3. ハンドラーに書いた内容:

private void btn_Click(object sender, RoutedEventArgs e)
{
   XmlConfigurator.Configure();       
   ILog Log = 
   LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
   Log.Fatal("The exception occurred", new Exception("Hello World of event log")); 
}`

これら 3 つのアクションをすべて実装した後、ウィンドウ イベント ビューアにエントリがありません。私のWindow Event Viewerを見てください: ここに画像の説明を入力

4

1 に答える 1

1

ログが割り当てられるイベント ソースを作成するには、管理者としてアプリを 1 回実行する必要があります。log4netのドキュメントで。

于 2016-01-29T21:01:31.680 に答える