2011-10-07 3 views
18

Je suis capable de transformer mon fichier log4net.config mais je ne reçois pas celui-ci. Comment changer la connectionString suivante?log4Net config transformer

<?xml version="1.0" encoding="utf-8" ?> 
    <configuration> 
     <log4net debug="true"> 
     <root> 
      <level value="ALL" /> 
     </root> 
     <logger name="MyApp"> 
      <level value="Debug" /> 
      <appender-ref ref="RollingLogFileAppender" /> 
      <appender-ref ref="AdoNetAppender" /> 
     </logger> 
     <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> 
       <file value="C:\Websites\Logs\SiteLog.txt"/> 
       <appendToFile value="true"/> 
       <rollingStyle value="Date"/> 
       <datePattern value="yyyyMMdd.txt"/> 
       <layout type="log4net.Layout.PatternLayout"> 
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/> 
       </layout> 
      </appender> 
     <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"> 
      <bufferSize value="1" /> 
      <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
      <connectionString value="***Data Source=(local);initial catalog=MyDB;User ID=sa;Password=dbPassword***" /> 

Ce qui suit ne fonctionne pas:

<?xml version="1.0" encoding="utf-8" ?> 

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <log4net debug="false" 
      xdt:Transform="SetAttributes(debug)" /> 
    <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"> 
    <connectionString value="Data Source=(local);initial catalog=RavenAxiom;User ID=ravenaxiom;Password=xyz" 
      xdt:Transform="SetAttributes(value)" /> 
    </appender> 
</configuration> 

Il modifie la valeur de débogage de sorte qu'il fonctionne partiellement. Merci pour l'aide.

Jack

+0

Ok, il a obtenu de travailler avec: xdt: Locator = Match "(nom) en appender name =" AdoNetAppender » puis xdt: Transformer = "Remplacer" dans connectionString value = "NewConnVlaues" –

Répondre

36

Ok, il a obtenu de travailler avec: xdt:Locator="Match(name)" dans appender name="AdoNetAppender" puis xdt:Transform="Replace" dans connectionString value="NewConnValues".

<configuration> 
    <log4net> 
    <appender name="AdoNetAppender" 
       type="log4net.Appender.AdoNetAppender" 
       xdt:Locator="Match(name)"> 
     <connectionString value="YourConnectionStringToBe" 
         xdt:Transform="Replace"/> 
    </appender> 
    </log4net> 
</configuration> 
+0

nice one, merci vous –

+0

vous êtes un sauveteur, gentil –