Capisco perché log4net utilizza i app.config
file per impostare la registrazione, in modo da poter cambiare facilmente la modalità di registrazione delle informazioni senza dover ricompilare il codice. Ma nel mio caso non voglio comprimere un app.config
file con il mio eseguibile. E non desidero modificare la mia configurazione di registrazione.
Esiste un modo per impostare il codice di accesso anziché utilizzare il app.config
?
Ecco il mio semplice file di configurazione:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="Logs\EventLog.txt" />
<appendToFile value="false" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="1GB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="MemoryAppender" type="log4net.Appender.MemoryAppender">
</appender>
<root>
<level value="Info" />
<appender-ref ref="RollingLogFileAppender" />
<appender-ref ref="MemoryAppender" />
</root>
</log4net>
</configuration>
MODIFICARE:
Per essere completamente chiari: il mio obiettivo è non avere un file XML. Nemmeno come risorsa integrata che trasformo in flusso. Il mio obiettivo era quello di definire il logger in modo completamente programmatico. Sono solo curioso di sapere se è possibile e se sì, dove potrei trovare un esempio della sintassi.