2010-09-10 5 views
2

J'ai configuré mon add-in Excel VSTO pour utiliser log4net pour la journalisation. Malheureusement, je ne suis (apparemment) pas en mesure de le configurer à partir de l'app.config (que je livre avec le complément via ClickOnce).Configuration de log4net dans un VSTO

J'ai lu http://www.darinhiggins.com/?p=13 qui énumère quelques façons d'obtenir le nom de fichier du app.config puis configurer log4net avec

log4net.Config.XmlConfigurator.Configure(fileInfo) 

Cependant, les approches de cette liste de blogs semblent très sujette aux erreurs à moi (ils " mauvaise odeur").

choses comme

ConfigurationManager.GetSection 

me faire croire que le framework .NET sait exactement où pour obtenir le fichier et il doit y avoir un moyen de récupérer ces informations dans le cadre plutôt que d'avoir à le comprendre moi-même . Cependant, le XmlConfigurator n'accepte à son tour qu'un nom de fichier, un flux ou un nœud xml ...

(Pourquoi je crois que cela ne fonctionne pas pour le moment: Je l'ai configuré pour utiliser un RollingFileAppender avec le nom de fichier étant H: \ Data \ Debug.log, mais après un GetLogger(...).Debug(...), il n'y a toujours pas de Debug.log en place ...). J'ai utilisé la même configuration exacte dans d'autres endroits, avec succès.

Répondre

3

XmlConfigurator.Configure(); utilise le fichier app.config. Cela devrait fonctionner puisque le ConfigurationManager semble pouvoir lire le fichier de configuration.

+1

Le blog référencé indique: "... mais malheureusement, puisque votre addin VSTO est une DLL, log4net, par défaut, regardera dans le fichier app.config actuel, qui, si vous utilisez Word, par exemple , sera WinWord.exe.config dans le dossier où vit WinWord.exe. " - Je veux qu'il utilise l'app.config que j'ai livré via ClickOnce ... – chiccodoro

+0

Comment je me suis trompé! Cette ressource semble juste être complètement faux ?? J'ai ajouté votre ligne de code à ma méthode de démarrage addin et maintenant ça marche bien! (Si c'était possible, je serais tenté de voter pour ma propre question ...) – chiccodoro

Questions connexes