none
Grabar un dato en una tabla cuando se sale de la aplicación. RRS feed

  • Pregunta

  • Normalmente los usuarios salen de mi sistema simplemente cerrando el browser. Necesito hacer que cuando esto pase, quede grabado un dato en una tabla SQL server. 

    Lo intenté usando el evento "Exit" en App.xaml.cs ,  que puedo capturar mediante " this.Exit += new EventHandler(App_Exit);"

    Entonces hice una función "Sale() en el servicio WCF y generé el siguiente código:

    void App_Exit(object sender, EventArgs e)
        {
          // Creo el objeto
          Servicio a = new Servicio();
          // convoco a la función "Sale" y le paso el parámetro a grabar en al base
          a.Sale("dato a grabar");
        }

    Por algún motivo, esto no funciona. Si funciona cuando hago lo mismo en el evento Startup. O sea, algo hace que se cierre todo y no le de tiempo al sistema a ejecutar la función Sale.

    Alguna pista de como solucionar esto ? Gracias.

    José

     

    jueves, 3 de junio de 2010 15:10

Todas las respuestas

  • En el evento close del javascript puedes abrir un popup que llame a aun imagen y con el src apuntando a una página que llame la lógica para guardar en el base datos.

    window.onunload = function(){alert("Bye now!");} 

     

    Tambien podrías hacerlo con ajax, crear un webMethod he involcarlo desde el onunload del javascript.

    Saludos,

    Manuel.


    mzegarra
    viernes, 4 de junio de 2010 18:59