Red de conocimiento informático - Material del sitio web - Cómo integrar la función de registro de log4net en un sistema de gestión de derechos universal

Cómo integrar la función de registro de log4net en un sistema de gestión de derechos universal

Primero, descargue el código fuente más reciente del sitio web oficial. El código fuente actual se puede abrir con VS2010.

La función de salida de registros a MSSQL se ha implementado en el código fuente, pero mi proyecto actualmente utiliza la base de datos Oracle, que no está implementada en el código fuente. Necesito implementarla yo mismo:

clase pública OracleAppender: BufferingAppenderSkeleton

{

// Campo

privado estático de solo lectura Tipo declarandoType = typeof(AdoNetAppender

<); p> cadena privada m_commandText

tipo de comando privado m_commandType = tipo de comando.

cadena privada m_connectionString

cadena privada m_connectionType; m_dbCommand;

conexión Oracle privada m_dbConnection;

protegida ArrayList m_parameters = nueva ArrayList();

privada bool m_reconnectOnError = false;

privada SecurityContext m_securityContext;

protected bool m_ usePreparedCommand;

private bool m_useTransactions = true;

// Métodos

anulación pública void ActivateOptions( )

{

base.ActivateOption();

this.m_usePreparedCommand = (this.m_commandText! = = this.m_commandText)m_commandText = null) amp ; amplificador (this.m_commandText! = nulo) amp; .m_commandText.Length gt;

if (this.m_securityContext == nulo)

{

this.m_securityContext = SecurityContextProvider.DefaultProvider.m_ parámetros .Add(parameter);

}

cadena virtual protegida GetLogStatement(LoggingEvent logEvent)

{

if (this.Layout = = null)

{

this.Layout == null)

if (this .Layout == null)

{

this.Layout = = null) if (this.m_dbCommand !m_db

Comando ! = null)

{

prueba

{

this.m_dbCommand.Dispose();

}

catch

{

}

this.m_dbCommand = null

}

}

if (this.m_dbCommand ! = null)

{

prueba

{

foreach ( Parámetro OracleAppenderParameter en this.m_parameters)

{

intente

{

p> parámetro.prepare(this.m_dbCommand);

}

catch (Excepción excepción2)

{

this.ErrorHandler.Error("No se pudo agregar el parámetro de comando de la base de datos [" parámetro .ParameterName "]", excepción2);

throw

}

}

}

catch;

{

> prueba

{

this.m_dbCommand.Dispose()

}

catch

{

}

this.m_dbCommand.Dispose();

}

captura

{

}

this.m_dbCommand.Dispose()

}

esto; .m_dbCommand.Dispose()m_dbCommand = null;

}

}

}

si (this.m_dbCommand ! = null)

{

prueba

{

this.m_dbCommand.Prepare();

}

catch (Excepción excepción3)

{

this.m_dbCommand.Prepare();