Ejemplo n.º 1
0
        public ActionResult agregarPelicula(PeliculaModelAndView model) //A esta vista se tiene acceso por post, no es necesario validar acceso por url.
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            else
            {
                try
                {
                    ViewBag.ErrorPelicula = "";
                    Entity.Peliculas peliculaAAgregar = new Entity.Peliculas();

                    //ruta de la carpeta
                    string appDataFolder = Server.MapPath("~/ImagenesDelServidor/");

                    string fileName = peliculaService.guardarUnaImagenEnUnCarpetaSeServidor(appDataFolder, model.imagenPeliculaModel);

                    peliculaAAgregar.Nombre         = model.nombrePeliculaModel;
                    peliculaAAgregar.Descripcion    = model.descripcionPeliculaModel;
                    peliculaAAgregar.IdCalificacion = Convert.ToInt32(model.idCalificacionPeliculaModel);
                    peliculaAAgregar.Duracion       = Convert.ToInt32(model.duracionPeliculaModel);
                    peliculaAAgregar.IdGenero       = Convert.ToInt32(model.idgeneroPeliculaModel);
                    peliculaAAgregar.Imagen         = fileName;
                    peliculaAAgregar.FechaCarga     = DateTime.Now;

                    peliculaService.grabarUnaPelicula(peliculaAAgregar);
                    return(RedirectToAction("peliculas"));
                }
                catch (FormatException e)
                {
                    ViewBag.ErrorPeliculaImagen = e.Message;
                    return(View(model));
                }
                catch (Exception e)
                {
                    ViewBag.ErrorPelicula = e.Message;
                    return(View(model));
                }
            }
        }
Ejemplo n.º 2
0
        public ActionResult agregarPelicula(PeliculaModelAndView model, HttpPostedFileBase imagenPelicula)
        {
            if (!ModelState.IsValid)
            {
                //model.llenarListados();
                return(View(model));
            }
            else
            {
                try
                {
                    ViewBag.ErrorPelicula = "";
                    Entity.Peliculas peliculaAAgregar = new Entity.Peliculas();
                    //Imagenes
                    //Obtengo la ruta absoluta
                    string appDataFolder = Server.MapPath("~/ImagenesDelServidor/");
                    string savePath      = appDataFolder;
                    string fileName      = imagenPelicula.FileName;
                    string pathToCheck   = savePath + fileName;
                    string tempfileName  = "";
                    if (System.IO.File.Exists(pathToCheck))
                    {
                        int counter = 2;
                        while (System.IO.File.Exists(pathToCheck))
                        {
                            // if a file with this name already exists,
                            // prefix the filename with a number.
                            tempfileName = counter.ToString() + fileName;
                            pathToCheck  = savePath + tempfileName;
                            counter++;
                        }

                        fileName = tempfileName;
                    }
                    else
                    {
                        Console.WriteLine("Se guardo la imagen correctamente");
                    }

                    // Append the name of the file to upload to the path.
                    savePath += fileName;

                    // Call the SaveAs method to save the uploaded
                    // file to the specified directory.
                    imagenPelicula.SaveAs(savePath);



                    peliculaAAgregar.Nombre         = model.nombrePeliculaModel;
                    peliculaAAgregar.Descripcion    = model.descripcionPeliculaModel;
                    peliculaAAgregar.IdCalificacion = Convert.ToInt32(model.idCalificacionPeliculaModel);
                    peliculaAAgregar.Duracion       = Convert.ToInt32(model.duracionPeliculaModel);
                    peliculaAAgregar.IdGenero       = Convert.ToInt32(model.idgeneroPeliculaModel);
                    peliculaAAgregar.Imagen         = fileName;
                    peliculaAAgregar.FechaCarga     = DateTime.Now;



                    peliculaService.grabarUnaPelicula(peliculaAAgregar);
                    return(RedirectToAction("peliculas"));
                }
                catch (Exception e)
                {
                    ViewBag.ErrorPelicula = e.Message;
                    return(View(model));
                }
            }
        }