2012-12-20 7 views
5

J'implémente la connexion dans mon application via NLog. Ceci est mon Nlog.Config:NLog ne se connecte pas avec ClickOnce

<?xml version="1.0" encoding="utf-8" ?> 
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 

    <targets async="true"> 
    <target xsi:type="File" 
      name="ExceptionTarget" 
      fileName="LOG.txt" 
      layout="${date:format=dd MMM yyyy HH-mm-ss} ${uppercase:${level}} ${newline}${message} ${exception::maxInnerExceptionLevel=5:format=ToString}${newline}${stacktrace}${newline}"/> 
    </targets> 

    <targets async="true"> 
    <target xsi:type="File" 
      name="InfoTarget" 
      fileName="LOG.txt" 
      layout="${date:format=mm-ss} ${uppercase:${level}} ${newline}${message} ${newline}"/> 
    </targets> 

    <rules> 
    <logger name="*" level="Error" writeTo="ExceptionTarget"/> 
    <logger name="*" level="Info" writeTo="InfoTarget"/> 
    </rules> 
</nlog> 

Quand je Déployez le app avec ClickOnce, aucun fichier log.txt est créé. Aucune erreur ne se produit et mon application fonctionne normalement, mais rien ne se passe.

Comment résoudre ce problème?

Répondre

10

Le programme d'installation de ClickOnce ne déploie pas le fichier NLog.config lorsque le logiciel est installé. Votre application ne dispose donc d'aucune configuration de journalisation.

Solution:

  1. Vous pouvez fusionner la configuration de l'enregistrement dans votre fichier app.config.
  2. Nlog.config doit avoir: Action de construction: Contenu et Copier dans le répertoire de sortie: Toujours copier.