public JsonResult DeleteFile(string id)
        {
            if (String.IsNullOrEmpty(id))
            {
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json(new { Result = "Error" }));
            }
            try
            {
                Guid guid = new Guid(id);
                ArchivoMatriculaOC archivoMatricula = db.ArchivoMatriculaOCs.Find(guid);
                if (archivoMatricula == null)
                {
                    Response.StatusCode = (int)HttpStatusCode.NotFound;
                    return(Json(new { Result = "Error" }));
                }

                //Remove from database
                db.ArchivoMatriculaOCs.Remove(archivoMatricula);
                db.SaveChanges();

                //Delete file from the file system
                var path = Path.Combine(Server.MapPath("~/Content/ArchivosMatriculasOC/"), archivoMatricula.Id + archivoMatricula.Extension);
                if (System.IO.File.Exists(path))
                {
                    System.IO.File.Delete(path);
                }
                return(Json(new { Result = "OK" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
        public ActionResult Edit(ControlMatriculas controlMatriculas)
        {
            if (ModelState.IsValid)
            {
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];

                    if (file != null && file.ContentLength > 0)
                    {
                        var nombreArchivo = Path.GetFileName(file.FileName);
                        ArchivoMatriculaOC archivoMatricula = new ArchivoMatriculaOC()
                        {
                            NombreArchivo = nombreArchivo,
                            Extension     = Path.GetExtension(nombreArchivo),
                            Id            = Guid.NewGuid(),
                            MatriculaOCId = controlMatriculas.Id
                        };
                        var path = Path.Combine(Server.MapPath("~/Content/ArchivosMatriculasOC/"), archivoMatricula.Id + archivoMatricula.Extension);
                        file.SaveAs(path);

                        db.Entry(archivoMatricula).State = EntityState.Added;
                    }
                    db.Entry(controlMatriculas).State = EntityState.Modified;
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            return(View(controlMatriculas));
        }
        public ActionResult Create(ControlMatriculas controlMatriculas)
        {
            if (ModelState.IsValid)
            {
                List <ArchivoMatriculaOC> archivoMatriculaOCs = new List <ArchivoMatriculaOC>();
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var Archivo = Request.Files[i];

                    if (Archivo != null && Archivo.ContentLength > 0)
                    {
                        var nombreArchivo = Path.GetFileName(Archivo.FileName);
                        ArchivoMatriculaOC archivoMatriculaOC = new ArchivoMatriculaOC()
                        {
                            NombreArchivo = nombreArchivo,
                            Extension     = Path.GetExtension(nombreArchivo),
                            Id            = Guid.NewGuid()
                        };
                        archivoMatriculaOCs.Add(archivoMatriculaOC);

                        var path = Path.Combine(Server.MapPath("~/Content/ArchivosMatriculasOC/"), archivoMatriculaOC.Id + archivoMatriculaOC.Extension);
                        Archivo.SaveAs(path);
                    }
                }
                controlMatriculas.ArchivoMatriculaOCs = archivoMatriculaOCs;
                db.ControlMatriculas.Add(controlMatriculas);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            else
            {
                ViewBag.ListaOCs       = new SelectList(db.OrdenCompra.OrderBy(x => x.OC), "OC", "OC");
                ViewBag.ListaLineas    = new SelectList(db.LineaVh.OrderBy(x => x.descripcion), "Id", "descripcion");
                ViewBag.ListaTerceros  = new SelectList(db.TercerosOCAs.OrderBy(x => x.nombres), "nombres", "nombres");
                ViewBag.ListaEntidades = new SelectList(db.EntidadMatriculas.OrderBy(x => x.nombres), "nombres", "nombres");
            }
            return(View(controlMatriculas));
        }