Je comprends pourquoi log4net utilise des app.config
fichiers pour configurer la journalisation - vous pouvez donc facilement modifier la façon dont les informations sont journalisées sans avoir à recompiler votre code. Mais dans mon cas, je ne veux pas emballer un app.config
fichier avec mon exécutable. Et je n'ai aucun désir de modifier ma configuration de journalisation.
Existe-t-il un moyen pour moi de configurer le code de connexion plutôt que d'utiliser le app.config
?
Voici mon fichier de configuration simple:
<?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>
ÉDITER:
Pour être tout à fait clair: mon objectif est de ne pas avoir de fichier XML. Pas même en tant que ressource embarquée que je transforme en flux. Mon objectif était de définir l'enregistreur complètement par programmation. Je suis juste curieux de savoir si c'est possible et si oui où je pourrais trouver un exemple de syntaxe.