0

ログファイルのパスをカスタムパスに変更する必要があります。

wwwrootフォルダーにファイルを作成するコードがあります。

  public static ILog logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

    protected void Application_Start(object sender, EventArgs e)
    {
        log4net.Config.XmlConfigurator.Configure();

        FileAppender rootAppender = (FileAppender)((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root.Appenders[0];           
        string filename = rootAppender.File;
        Global.logger.Error("Log 4 net filename: " + filename);         
    }

some1がこれを手伝ってくれますか。

ありがとう

これは私の設定ファイルにあるものです。

   <!-- Log file locaation -->
<param name='File' value='TS_GUI_Logs.coplog'/>
<param name='AppendToFile' value='true'/>

設定でファイル名を設定したくありません。代わりに、コードビハインドから設定したいと思います。

4

2 に答える 2

1

設定ファイルを確認しましたか?このコードは、構成ファイルからファイル名を読み取ります。

すべてにカスタムパスが必要な場合は、構成ファイルのパスを変更します。(この設定のすべてのコンシューマーがコードに含まれていることを確認してください。)1つのカスタムパスが必要な場合は、新しいFileAppenderを作成する必要があります。

于 2012-07-23T21:53:11.093 に答える
0

次のようなlog4net構成を使用できます。

<log4net debug="true">
  <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
    <file type="log4net.Util.PatternString" value="%property{LogFileName}" />

アプリケーションの開始コードは次のようになります。

    log4net.GlobalContext.Properties["LogFileName"] = "C:\\aaaaa.log";
    log4net.Config.XmlConfigurator.Configure();
于 2019-11-15T06:37:14.393 に答える