//boton eliminar
 protected void btnEliminar_Click(object sender, EventArgs e)
 {
     Obj_Persona_DAL   = new Cls_Persona_DAL();
     Obj_Telefonos_DAL = new Cls_Telefonos_DAL();
     Obj_Correos_DAL   = new Cls_Correos_DAL();
     //Recorre Grid buscando chk
     foreach (GridViewRow row in PersonaGridView.Rows)
     {
         //busca el la fila
         if (row.RowType == DataControlRowType.DataRow)
         {
             //si esta checkeado instancia las propiedades del objeto
             CheckBox chkRow = (row.Cells[0].FindControl("chkRow") as CheckBox);
             if (chkRow.Checked)
             {
                 Obj_Persona_DAL.sIdPersona   = row.Cells[0].Text;
                 Obj_Correos_DAL.sIdPersona   = row.Cells[0].Text;
                 Obj_Telefonos_DAL.sIdPersona = row.Cells[0].Text;
                 Obj_Telefonos_BLL.crudTelefono(ref Obj_Telefonos_DAL, BD.Eliminar);
                 Obj_Correos_BLL.crudCorreos(ref Obj_Correos_DAL, BD.Eliminar);
                 Obj_Persona_BLL.crudPersona(ref Obj_Persona_DAL, BD.Eliminar);
             }
         }
     }
     if (Obj_Persona_DAL.sMsjError == string.Empty)
     {
         this.errorMensaje.InnerHtml = "Persona Eliminada con exito.";
         this.BindGrid();
     }
     else
     {
         this.errorMensaje.InnerHtml = "Se presento un error a la hora de Eliminar la(s) Persona(s).";
     }
 }
        protected void btnGuardar_Click1(object sender, EventArgs e)
        {
            Obj_Persona_DAL            = new Cls_Persona_DAL();
            Obj_Persona_DAL.sIdPersona = txtCedula.Value.Trim();
            Obj_Persona_DAL.sNombre    = txtnombre.Value.Trim();
            Obj_Persona_DAL.sDireccion = TextAreadireccion.Value.Trim();
            Obj_Persona_DAL.bIdRol     = Convert.ToByte(DropDownRol.Value);
            // Primero se inserta la persona, de lo contrario no se insertarán los telefonos ni los correos
            // Por que el IdPErsona, es la llave primaria de estos campos
            if ((BD)Session["tipo"] == BD.Actualizar)
            {
                Obj_Persona_BLL.crudPersona(ref Obj_Persona_DAL, BD.Actualizar);
            }
            if ((BD)Session["tipo"] == BD.Insertar)
            {
                Obj_Persona_BLL.crudPersona(ref Obj_Persona_DAL, BD.Insertar);
            }
            #region Telefono
            if (BD.Insertar.Equals((BD)Session["tipo"]))
            {
                foreach (GridViewRow row in GridViewTelefono.Rows)
                {
                    //busca el la fila
                    if (row.RowType == DataControlRowType.DataRow)
                    {
                        {
                            Obj_Telefonos_DAL            = new Cls_Telefonos_DAL();
                            Obj_Telefonos_DAL.sTelefono  = row.Cells[0].Text;
                            Obj_Telefonos_DAL.sIdPersona = txtCedula.Value.ToString().Trim();
                            Obj_Telefonos_BLL.crudTelefono(ref Obj_Telefonos_DAL, BD.Insertar);//   insertar
                        }
                    }
                }
            }
            #endregion
            //-Aqui agrego el de correo foreach
            #region Correo
            if (BD.Insertar.Equals((BD)Session["tipo"]))
            {
                foreach (GridViewRow row in CorreoPersonaGridView.Rows)
                {
                    //busca el la fila
                    if (row.RowType == DataControlRowType.DataRow)
                    {
                        {
                            Obj_Correo_DAL            = new Cls_Correos_DAL();
                            Obj_Correo_DAL.sIdPersona = this.txtCedula.Value.ToString().Trim();
                            Obj_Correo_DAL.sCorreo    = row.Cells[0].Text;
                            Obj_Correo_BLL.crudCorreos(ref Obj_Correo_DAL, BD.Insertar);//  insertar
                        }
                    }
                }
            }

            #endregion
            Response.Redirect(pantallaMantenimiento, true);
        }
        protected void Registrarse(object sender, EventArgs e)
        {
            Cls_Persona_DAL Obj_Persona_DAL = new Cls_Persona_DAL();
            Cls_Persona_BLL Obj_Persona_BLL = new Cls_Persona_BLL();

            Obj_Persona_DAL.sIdPersona = this.cedulaRG.Value.ToString().Trim();
            Obj_Persona_DAL.sNombre    = this.nombreRG.Value.ToString().Trim();
            Obj_Persona_DAL.sDireccion = this.direccionRG.Value.ToString().Trim();
            Obj_Persona_DAL.bIdRol     = (byte)Rol.Cliente;

            Obj_Persona_BLL.crudPersona(ref Obj_Persona_DAL, BD.Insertar);

            Cls_Telefonos_DAL Obj_Telefonos_DAL = new Cls_Telefonos_DAL();
            Cls_Telefono_BLL  Obj_Telefonos_BLL = new Cls_Telefono_BLL();

            Obj_Telefonos_DAL.sTelefono  = this.telefonoRG.Value.ToString().Trim();
            Obj_Telefonos_DAL.sIdPersona = this.cedulaRG.Value.ToString().Trim();
            Obj_Telefonos_BLL.crudTelefono(ref Obj_Telefonos_DAL, BD.Insertar);//   insertar

            Cls_Correos_DAL Obj_Correo_DAL = new Cls_Correos_DAL();
            Cls_Correos_BLL Obj_Correo_BLL = new Cls_Correos_BLL();

            Obj_Correo_DAL.sIdPersona = this.cedulaRG.Value.ToString().Trim();
            Obj_Correo_DAL.sCorreo    = this.emailRG.Value.ToString().Trim();
            Obj_Correo_BLL.crudCorreos(ref Obj_Correo_DAL, BD.Insertar);//  insertar


            Cls_Clientes_DAL Obj_Cliente_DAL = new Cls_Clientes_DAL();
            Cls_Clientes_BLL Obj_Cliente_BLL = new Cls_Clientes_BLL();

            Obj_Cliente_DAL.sIdPersona     = this.cedulaRG.Value.ToString().Trim();
            Obj_Cliente_DAL.bIdTipoCliente = (byte)Cliente.Socio;
            Obj_Cliente_BLL.crudCliente(ref Obj_Cliente_DAL, BD.Insertar);


            Cls_Usuario_DAL Obj_Usuario_DAL = new Cls_Usuario_DAL();
            Cls_Usuario_BLL Obj_Usuario_BLL = new Cls_Usuario_BLL();

            Obj_Usuario_DAL.SIdUsuario  = this.cedulaRG.Value.ToString().Trim();
            Obj_Usuario_DAL.SIdPersona  = this.cedulaRG.Value.ToString().Trim();
            Obj_Usuario_DAL.SContrasena = this.passwordRG.Value.ToString().Trim();
            Obj_Usuario_BLL.Encripta(ref Obj_Usuario_DAL);
            Obj_Usuario_BLL.crudUsuario(ref Obj_Usuario_DAL, BD.Insertar);


            Obj_Persona_DAL.sIdPersona = this.cedulaRG.Value.ToString().Trim();
            Obj_Persona_BLL.crudPersona(ref Obj_Persona_DAL, BD.Filtrar);

            Session["Login"] = Obj_Persona_DAL;
            Server.Transfer("IndexCliente.aspx");
        }
        public void crudCorreos(ref Cls_Correos_DAL Obj_Correos_DAL, BD Accion)
        {
            // Se instancia el Objeto de CatalogosMantenimientosClient (WCF)
            CatalogosMantenimientosClient Obj_Correos_Client = new CatalogosMantenimientosClient();

            try
            {
                // Se abre la conexion al servicio
                Obj_Correos_Client.Open();
                // Se cargan trae el DataTable y se carga al Obj_Estado_DAL
                string sMsjError = string.Empty;
                switch (Accion)
                {
                case BD.Actualizar:
                    Obj_Correos_Client.actualizarCorreos(Obj_Correos_DAL.sIdCorreo, Obj_Correos_DAL.sIdPersona, Obj_Correos_DAL.sCorreo, ref sMsjError);
                    break;

                case BD.Eliminar:
                    Obj_Correos_Client.eliminarCorreos(Obj_Correos_DAL.sIdCorreo, Obj_Correos_DAL.sIdPersona, Obj_Correos_DAL.sCorreo, ref sMsjError);
                    break;

                case BD.Filtrar:
                    Obj_Correos_DAL.DS.Tables.Add(Obj_Correos_Client.filtrarCorreos(Obj_Correos_DAL.sIdCorreo, Obj_Correos_DAL.sIdPersona, Obj_Correos_DAL.sCorreo, ref sMsjError));
                    break;

                case BD.Insertar:
                    Obj_Correos_Client.insertarCorreos(Obj_Correos_DAL.sIdPersona, Obj_Correos_DAL.sCorreo, ref sMsjError);
                    break;

                case BD.Listar:
                    Obj_Correos_DAL.DS.Tables.Add(Obj_Correos_Client.listarCorreos(ref sMsjError));
                    break;

                default:
                    break;
                }
                Obj_Correos_DAL.sMsjError = sMsjError;
            }
            catch (Exception ex)
            {
                Obj_Correos_DAL.sMsjError = ex.Message.ToString();
            }
            finally
            {
                if (Obj_Correos_Client.State == System.ServiceModel.CommunicationState.Opened)
                {
                    Obj_Correos_Client.Close();
                }
            }
        }
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         CargarRoles(); // Carga combo con posibles valores
         if ((BD)Session["tipo"] == BD.Actualizar)
         {
             Obj_Persona_DAL = (Cls_Persona_DAL)Session["Persona"];
             //this.mantenimiento.InnerHtml = "Modificacion de Persona";
             // Carga de datos Obj_Persona_DAL
             txtCedula.Disabled      = true;
             txtCedula.Value         = Obj_Persona_DAL.sIdPersona;
             txtnombre.Value         = Obj_Persona_DAL.sNombre;
             TextAreadireccion.Value = Obj_Persona_DAL.sDireccion;
             // Carga Rol
             DropDownRol.Value = Obj_Persona_DAL.bIdRol.ToString();
             // carga grid teléfonos
             Obj_Telefonos_DAL            = new Cls_Telefonos_DAL();
             Obj_Telefonos_DAL.sIdPersona = Obj_Persona_DAL.sIdPersona;
             Obj_Telefonos_BLL.crudTelefono(ref Obj_Telefonos_DAL, BD.Filtrar);
             GridViewTelefono.DataSource = Obj_Telefonos_DAL.DS.Tables[0];
             GridViewTelefono.DataBind();
             // carga grid de correos
             Obj_Correo_DAL            = new Cls_Correos_DAL();
             Obj_Correo_DAL.sIdPersona = Obj_Persona_DAL.sIdPersona;
             Obj_Correo_BLL.crudCorreos(ref Obj_Correo_DAL, BD.Filtrar);
             CorreoPersonaGridView.DataSource = Obj_Correo_DAL.DS.Tables[0];
             CorreoPersonaGridView.DataBind();
         }
         else
         {
             //this.mantenimiento.InnerHtml = "Nuevos de Estados";
             txtCedula.Value         = string.Empty;
             txtnombre.Value         = string.Empty;
             TextAreadireccion.Value = string.Empty;
         }
     }
 }