Je comprends pourquoi log4net utilise app.config
fichiers pour la configuration de la journalisation de sorte que vous pouvez facilement changer la façon dont l'information est connecté sans avoir besoin de recompiler le code. Mais dans mon cas, je ne veux pas de pack un app.config
le fichier avec mon exécutable. Et je n'ai pas envie de modifier mon journalisation de la configuration.
Est-il un moyen pour moi de configurer la journalisation dans le code plutôt que d'utiliser l' app.config
?
Voici mon simple fichier de configuration:
<?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>
EDIT:
Pour être parfaitement clair: C'est mon objectif est de ne pas avoir de fichier XML. Même pas en tant que ressource incorporée que je me tourne vers un cours d'eau. Mon objectif a été de définir l'enregistreur complètement par programmation. Juste curieux de savoir si c'est possible et si oui où je pourrais trouver un exemple de la syntaxe.