Ejemplo n.º 1
0
        public ActionResult Create(ActividadHorasSociale actividad)
        {
            var actiporcarrera = (from c in dc.Carreras select c);

            if (ModelState.IsValid)
            {
                try
                {
                    dc.ActividadHorasSociales.InsertOnSubmit(actividad);
                    dc.SubmitChanges();

                    string[] carreras = Request.Form["checkboxCarreras"].ToString().Split(',');
                    foreach (var value in carreras)
                    {
                        if (value != "false")
                        {
                            int idCarrera = Convert.ToInt32(value);

                            ActividadSocialCarrera ac = new ActividadSocialCarrera();
                            ac.idActividad = actividad.idactividad;
                            ac.idCarrera = idCarrera;
                            dc.ActividadSocialCarreras.InsertOnSubmit(ac);
                        }
                    }

                    dc.SubmitChanges();
                    return RedirectToAction("Index");
                }
                catch
                {
                    ViewData["carreras"] = actiporcarrera;
                    return View(actividad);
                }
            }

            ViewData["carreras"] = actiporcarrera;
            return View(actividad);
        }
Ejemplo n.º 2
0
        public ActionResult Edit(int id, FormCollection collection)
        {
            var actividad = (from a in dc.ActividadHorasSociales where a.idactividad == id select a).FirstOrDefault();
            try
            {
                UpdateModel(actividad);

                List<int> ids = new List<int>();

                string[] carreras = Request.Form["checkboxCarreras"].ToString().Split(',');
                foreach (var value in carreras)
                {
                    if (value != "false")
                    {
                        int idCarrera = Convert.ToInt32(value);
                        ids.Add(idCarrera);
                    }
                }

                foreach (var value in ids)
                {
                    var hc = (from h in dc.ActividadSocialCarreras where h.idCarrera == value select h).FirstOrDefault();

                    if (hc == null)
                    {
                        ActividadSocialCarrera ac = new ActividadSocialCarrera();
                        ac.idActividad = actividad.idactividad;
                        ac.idCarrera = value;
                        dc.ActividadSocialCarreras.InsertOnSubmit(ac);
                    }
                }

                var toBeDeleted = from h in dc.ActividadSocialCarreras where !ids.Contains(h.idCarrera) select h;
                dc.ActividadSocialCarreras.DeleteAllOnSubmit(toBeDeleted);

                dc.SubmitChanges();
                return RedirectToAction("Index");
            }
            catch
            {
                var actiporcarrera = (from c in dc.Carreras select c);
                ViewData["carreras"] = actiporcarrera;

                var selected = from c in dc.ActividadSocialCarreras where c.idActividad == id select c.idCarrera;
                ViewData["selected"] = selected;
                return View(actividad);
            }
        }