none
Como obtener el nombre de mi método que genero la excepción? RRS feed

  • Pregunta

  • Hola compañeros me podrian ayudar, como hago para recuperar el nombre de mi metodo que genero la excepcion este es mi codigo:

    DataCMDB cmdb = new DataCMDB();

                try
                {
                    cmdb.SyncProjectsfromSF_cp();
                    cmdb.SyncClientsfromSF_cp();
                    
                   
                }
                catch (Exception ex)
                {
                    var st = new System.Diagnostics.StackTrace(); // 
                    string funcion = st.GetFrame(0).GetMethod().Name;// Estuve intentando de esta forma pero solo me devuelve Main
                    
                    GuardarInformacionError(funcion, ex.Message.ToString());
                    
                }

    En la variable funcion necesito pasarle si fue SyncProjectfromSF_cp o SyncClientfromSF Alguna sugerencia? gracias saludos.


    • Editado Jasgo viernes, 20 de julio de 2012 1:48
    viernes, 20 de julio de 2012 1:46

Respuestas

Todas las respuestas

  • hola

    no probaste con el


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Jasgo viernes, 20 de julio de 2012 15:00
    viernes, 20 de julio de 2012 1:53
  • Me imagino que tu código está en Main, y por eso cuando preguntas por

    st.GetFrame(0).GetMethod().Name

    siempre te devuelve "Main". En lugar de GetFrame(0), querrás usar getFrame(1) para que te devuelva el siguiente nivel de la pila (que será el método al que llamaste desde Main).

    viernes, 20 de julio de 2012 6:56
    Moderador
  • Hola Alberto gracias si lo intente con el indice 1 y me devuelve ("_nExecuteAssembly"), para mas rápido lo que se me occurio hacer son 2 try y en cada uno invocar a una función diferente y solamente paso el nombre de la función en una variable string, gracias por la recomendación Leandro saludos. 

    viernes, 20 de julio de 2012 15:00
  • System.Reflection.MethodBase.GetCurrentMethod().Name


    • Propuesto como respuesta Edwin Fredy domingo, 13 de marzo de 2016 7:05
    • Votado como útil Edwin Fredy domingo, 13 de marzo de 2016 7:05
    miércoles, 29 de enero de 2014 10:40