/// <summary> /// Agrega una nueva entrada pelicula pasada por parametro a la base de datos /// </summary> /// <param name="nuevaPeli"></param> /// <returns></returns> public static bool AgregarPelicula(Entrada nuevaPeli) { bool todoOk = false; ConexionBD.ObtenerPeliculas(); if (!(nuevaPeli is null)) { if (Peliculas + nuevaPeli) { if (ConexionBD.InsertarPelicula(nuevaPeli)) { todoOk = true; ConexionBD.ObtenerPeliculas(); } else { throw new ProductoException(); } } }
/// <summary> /// Obtiene las peliculas de la base de datos /// </summary> public static void ObtenerPeliculas() { List <Entrada> auxPeliculas = new List <Entrada>(); SqlCommand comando = new SqlCommand(); try { comando.Connection = conexion; comando.CommandType = CommandType.Text; comando.CommandText = "SELECT * FROM CARTELERA"; if (conexion.State != ConnectionState.Open) { conexion.Open(); } SqlDataReader datos = comando.ExecuteReader(); while (datos.Read()) { auxPeliculas.Add(new Entrada( float.Parse(datos["Precio"].ToString()), datos["Pelicula"].ToString(), Entrada.MapearEnum(datos["Genero"].ToString()) )); } } catch (Exception ex) { throw new ConexionException("No se pudo conectar a la base de datos" + ex.Message.ToString()); } finally { conexion.Close(); } AutoCine.Peliculas = auxPeliculas; }
/// <summary> /// Inserta una pelicula en la base de datos /// </summary> /// <param name="e"></param> /// <returns></returns> public static bool InsertarPelicula(Entrada e) { SqlCommand comando = new SqlCommand(); bool todoOk = false; try { comando.Connection = conexion; comando.CommandType = CommandType.Text; comando.CommandText = "INSERT INTO CARTELERA " + "(Pelicula, Genero, Precio) VALUES(@Pelicula, @Genero, @Precio)"; comando.Parameters.Clear(); comando.Parameters.Add(new SqlParameter("@Pelicula", e.Pelicula)); comando.Parameters.Add(new SqlParameter("@Genero", e.Genero.ToString())); comando.Parameters.Add(new SqlParameter("@Precio", e.Precio)); if (conexion.State != ConnectionState.Open) { conexion.Open(); } comando.ExecuteNonQuery(); todoOk = true; } catch (Exception ex) { throw new ArchivoException("No se pudo conectar a la base de datos" + ex.Message.ToString()); } finally { conexion.Close(); } return(todoOk); }