public async Task <ActionResult> Create([Bind(Include = "IdCerteza,AreaConocimiento,Descripcion,Reactivos,ValorTotal,ValorUnitario,Factor,FechaCreacion")] Certezas certezas, String[] Titulo, String[] DescripcionNivel, Decimal[] Min, Decimal[] Max)

        {
            if (ModelState.IsValid)
            {
                //Inserto certezas y cambio los valores
                certezas.Activo        = true;
                certezas.ValorTotal    = certezas.Reactivos * certezas.ValorUnitario;
                certezas.FechaCreacion = DateTime.Now;
                certezas.Factor        = "Puntos";
                db.Certezas.Add(certezas);
                await db.SaveChangesAsync();

                var IdCerteza = certezas.IdCerteza;


                for (int i = 0; i < Titulo.Length; i++)
                {
                    NivelCertezas nc = new NivelCertezas {
                        Titulo = Titulo[i], Descripcion = DescripcionNivel[i], maximo = Max[i], minimo = Min[i], IdCerteza = IdCerteza
                    };
                    //Console.WriteLine(pr.Correcta);
                    //db.GuardarPreguntasRespuestas(IdPregunta, Respuesta[i], true, respuestas2[i]);

                    db.NivelCertezas.Add(nc);
                    db.SaveChanges();
                }

                return(RedirectToAction("Index"));
            }

            return(View(certezas));
        }
        public async Task <ActionResult> Edit([Bind(Include = "IdCerteza,AreaConocimiento,Reactivos,ValorTotal,ValorUnitario,Factor,FechaCreacion,Descripcion")] Certezas certezas, string[] Titulo, string[] DescripcionNivel, Decimal[] Min, Decimal[] Max, int[] IDNIVEL)
        {
            certezas.FechaCreacion = DateTime.Now;
            certezas.Factor        = "Puntos";
            certezas.Activo        = true;
            var IdCerteza = certezas.IdCerteza;

            //var data = (from niv in db.NivelCertezas
            //            where niv.IdCerteza == IdCerteza
            //            select new Models.NivelCertezas
            //            {
            //                Descripcion = niv.Descripcion,
            //                IdCerteza = niv.IdCerteza,
            //                IdNivel = niv.IdNivel,
            //                maximo = niv.maximo,
            //                minimo = niv.minimo,
            //                Titulo = niv.Titulo
            //            }).ToList();
            try
            {
                if (ModelState.IsValid)
                {
                    for (int i = 0; i < Titulo.Length; i++)
                    {
                        var n = db.NivelCertezas.Find(IDNIVEL[i]);
                        n.Titulo          = Titulo[i];
                        n.Descripcion     = DescripcionNivel[i];
                        n.maximo          = Max[i];
                        n.minimo          = Min[i];
                        n.IdCerteza       = IdCerteza;
                        db.Entry(n).State = EntityState.Modified;
                        n = null;
                    }
                    db.Entry(certezas).State = EntityState.Modified;
                    await db.SaveChangesAsync();

                    return(RedirectToAction("Index"));
                }
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                          ve.PropertyName, ve.ErrorMessage);
                    }
                }
                throw;
            }

            return(View(certezas));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            Certezas certezas = await db.Certezas.FindAsync(id);

            db.Entry(certezas).State = EntityState.Modified;
            //db.Certezas.Remove(certezas);
            certezas.Activo = false;
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
        // GET: Certezas/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Certezas certezas = await db.Certezas.FindAsync(id);

            if (certezas == null)
            {
                return(HttpNotFound());
            }
            return(View(certezas));
        }