cómo registrar el nombre del método cuando se utiliza la clase de envoltura con Log4net

Estoy implementando un formateador XML personalizado para log4.net

public class ISDSApplicationEventsLayout : XmlLayoutBase
{
    protected override void FormatXml(...)
    {
        //Location Info 
        writer.WriteStartElement("Method");
        writer.WriteString(**loggingEvent.LocationInformation.MethodName * *);
        writer.WriteEndElement();
    }
}

El problema es ... ahora cuando llamo al método de registro desde mi clase de contenedor de registro ... llamado registro

public static void logEvent(string message)
{
    log.Info(isdsLog); 
}

Me sale la salida ....

  <Method>logEvent</Method>

¿Cómo es posible tener el nombre del método que se llama logEvent, en lugar de logEvent como el nombre del método?

Gracias

Actualización de la pregunta:

Si esto parece un poco complicado, lo que realmente estoy preguntando es: ¿Cómo se mantiene el contexto del método que llamó a la función de registro de ajuste en log4net ...

ejemplo ... método doWork () ... llamadas -> contenedor de registro -> llamadas log4net ....

¿Cómo se hace que methodname = doWork y NO registre la función de contenedor ...?

Respuestas a la pregunta(2)

Su respuesta a la pregunta