public static BeneficiarioClass BuscarBeneficiariosPorOrden(long id_orden)
        {
            BeneficiarioClass r = new BeneficiarioClass();

            saluddbEntities ctx = new saluddbEntities();

            var cur = from o in ctx.ordenentregas
                      where o.id_orden == id_orden
                      select o;

            if (cur.Count() > 0)
            {
                var f = cur.First();

                r = BeneficiarioClass.BuscarBeneficiario(f.id_beneficiario.ToString(), CriterioBusqueda.Busqueda_ID);


                return(r);
            }

            return(r);
        }
        public bool Modificar()
        {
            bool r = false;

            try
            {
                var cur = from g in ctx.grupoes
                          where g.id_grupo == _id_grupo
                          select g;


                var f = cur.First();
                f.descripcion = _descripcion;

                ctx.SaveChanges();
                r = true;

                if (r)
                {
                    var cur2 = from bg in ctx.beneficiario_grupo
                               where bg.id_gupo == _id_grupo
                               select bg;


                    List <BeneficiarioClass>  listaGuardada = new List <BeneficiarioClass>();
                    List <beneficiario_grupo> listaAdd      = new List <beneficiario_grupo>();
                    List <beneficiario_grupo> listaBorrar   = new List <beneficiario_grupo>();
                    foreach (beneficiario_grupo bg in cur2)
                    {
                        listaGuardada.Add(BeneficiarioClass.BuscarBeneficiario((bg.id_beneficiario).ToString(), CriterioBusqueda.Busqueda_ID));
                    }

                    // Si se guardó la descripción guardo los beneficiarios
                    foreach (BeneficiarioClass b in _beneficiarios)
                    {
                        if (listaGuardada.Exists(x => x.Id_beneficiario == b.Id_beneficiario))
                        {
                            // No hago nada;
                        }
                        else
                        {
                            // Guardo en la lista para agregar
                            // listaAdd.Add(b);
                            beneficiario_grupo bg = new beneficiario_grupo();
                            bg.id_gupo         = this.Id_grupo;
                            bg.id_beneficiario = b.Id_beneficiario;
                            listaAdd.Add(bg);
                            // ctx.beneficiario_grupo.Attach(bg);
                            ctx.beneficiario_grupo.Add(bg);
                            ctx.SaveChanges();

                            // ctx.beneficiario_grupo.Add(bg);
                            // ctx.SaveChanges();
                        }
                    }


                    foreach (BeneficiarioClass b in listaGuardada)
                    {
                        if (_beneficiarios.Exists(x => x.Id_beneficiario == b.Id_beneficiario))
                        {
                            // NO hago nada
                        }
                        else
                        {
                            //listaBorrar.Add(b);
                            beneficiario_grupo bg = new beneficiario_grupo();
                            bg.id_gupo         = this.Id_grupo;
                            bg.id_beneficiario = b.Id_beneficiario;
                            listaBorrar.Add(bg);

                            //ctx.beneficiario_grupo.Remove(bg);
                        }
                    }

                    /*  foreach(beneficiario_grupo bg in listaAdd)
                     * {
                     *    ctx.beneficiario_grupo.Add(bg);
                     *
                     * }
                     */
                    foreach (beneficiario_grupo bg in listaBorrar)
                    {
                        if (eliminarBeneficiarioGrupo(bg.id_beneficiario, bg.id_gupo))
                        {
                        }
                        else
                        {
                            r = false;
                        }
                    }
                    ctx.SaveChanges();
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Error al modificar el grupo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                r = false;
            }



            return(r);
        }