コード例 #1
0
        public async Task <IActionResult> Create([Bind("Id,CursoId,MateriaId")] CursoMateria cursoMateria)
        {
            if (ModelState.IsValid)
            {
                //Valida que la materia no este asignada al curso, buscando una relacion entre ese curso y esa materia en la BD
                var cursoMat = _context.CursoMateria.Where(x => x.CursoId == cursoMateria.CursoId && x.MateriaId == cursoMateria.MateriaId).FirstOrDefault();
                if (cursoMat == null)
                {
                    _context.Add(cursoMateria);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            //En caso de ya existir, vuelve a la view Create con toda la información necesaria y disponibiliza el mensaje de error
            var materias = (from m in _context.Materia
                            orderby m.Nombre ascending
                            select m).ToList();
            var cursos = (from c in _context.Curso
                          orderby c.Sigla ascending
                          select c).ToList();

            ViewBag.Materias = materias;
            ViewBag.Cursos   = cursos;
            ViewBag.Erro     = "display: inline; color:red;";
            return(View(cursoMateria));
        }
コード例 #2
0
 public void AddCursoMateria(CursoMateria cursoMateria)
 {
     meuBanco = new BancoDeDadosContext();
     using (meuBanco)
     {
         meuBanco.CursoMateria.Add(cursoMateria);
         meuBanco.SaveChanges();
     }
 }
コード例 #3
0
        public void insertarCursoMateria(UUser dat)
        {
            CursoMateria cm = new CursoMateria();

            using (var db = new Mapeo("public"))
            {
                cm.id_cm_curso    = int.Parse(dat.Curso);
                cm.id_cm_materia  = int.Parse(dat.Cur_mat);
                cm.id_cm_profesor = int.Parse(dat.Id_docente);
                db.cursomateria.Add(cm);
                db.SaveChanges();
            }
        }
コード例 #4
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,CursoId,MateriaId")] CursoMateria cursoMateria)
        {
            if (id != cursoMateria.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    //Valida que el nuevo curso no tenga, previamente, la materia que se desea asignar
                    var cursoMat = _context.CursoMateria.Where(x => x.CursoId == cursoMateria.CursoId && x.MateriaId == cursoMateria.MateriaId).FirstOrDefault();
                    if (cursoMat == null)
                    {
                        _context.Update(cursoMateria);
                        await _context.SaveChangesAsync();

                        return(RedirectToAction(nameof(Index)));
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!CursoMateriaExists(cursoMateria.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            //En caso de ser invalido, vuelve a la view Edit con la información necesaria
            var materia = _context.Materia.Where(x => x.Id == cursoMateria.MateriaId).FirstOrDefault();
            var cursos  = (from c in _context.Curso
                           select c).ToList();

            ViewBag.Materia = materia;
            ViewBag.Curso   = cursos;
            ViewBag.Erro    = "display: inline; color:red;";
            return(View(cursoMateria));
        }
コード例 #5
0
        public ActionResult PostCurso(CursoMateria cursoMateria)
        {
            var result = new Result <CursoMateria>();

            try
            {
                Utilidades <CursoMateria> auxiliar = new Utilidades <CursoMateria>();
                auxiliar.AddCursoMateria(cursoMateria);
                result.Error   = false;
                result.Message = Message.Success;

                return(Ok(result));
            }
            catch (Exception ex)
            {
                result.Error   = true;
                result.Message = Message.Failure + ex.Message;
                result.Status  = System.Net.HttpStatusCode.InternalServerError;

                return(NotFound(result));
            }
        }