2011-10-07 16 views
18

Soy capaz de transformar mi log4net.config pero no obtengo este. ¿Cómo cambio el siguiente connectionString?log4Net config transform

<?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***" /> 

El siguiente no funciona:

<?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> 

Cambia el valor de depuración por lo que funciona parcialmente. Gracias por la ayuda.

Jack

+0

Entendido trabajar con: xdt: Localizador = "partido (nombre) en appender name =" AdoNetAppender" y luego xdt: Transformar = "Reemplazar" en connectionString value = "NewConnVlaues" –

Respuesta

36

Ok, tengo trabajo con: xdt:Locator="Match(name)" en appender name="AdoNetAppender" y luego xdt:Transform="Replace" en 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

bonito, gracias usted –

+0

usted es un salvavidas, uno agradable –