示例#1
0
        protected void dtgEmails_DeleteCommand(object source, DataGridCommandEventArgs e)
        {
            try
            {
                string script;
                /* Obtener los datos de la grilla. */
                this.dsEmails = (DsEmail)Session["dsEmails"];
                /* Posicionarse en el registro deseado. */
                DsEmail.DatosRow dr = (DsEmail.DatosRow) this.dsEmails.Datos.Rows[e.Item.DataSetIndex];

                IEmail email = EmailFactory.GetEmail();
                email.EmailID = dr.EmailID;
                if (!email.Eliminar())
                {
                    /** Si se produjo algún error **/
                    script  = "<script language='javascript'>\n";
                    script += "alert('La eliminación no se realizó debido a errores.');\n";
                    script += "</script>";
                    Page.RegisterStartupScript("scriptError", script);
                }
                dr    = null;
                email = null;

                this.dtgEmails.EditItemIndex = -1;
                Session["dsEmails"]          = null;
                this.BindGrid(0);
            }
            catch (Exception ex)
            {
                string mensaje = ex.Message;
                try
                {
                    if (mensaje == "" || mensaje == null)
                    {
                        mensaje = ex.Message;
                    }
                }
                catch (Exception)
                {
                    mensaje = ex.Message;
                }
                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje);
            }
        }