private void cargarProductosPedidos() { Pedido.ProductosPedidos = null; if (CadenaArticulos != null && !CadenaArticulos.Trim().Equals("")) { Pedido.ProductosPedidos = new List <ET.ArticuloCantidad>(); CadenaArticulos = CadenaArticulos.Trim(); char c1 = ' '; char c2 = ';'; string[] substrings = CadenaArticulos.Split(c1); for (int i = 0; i < substrings.Length; i++) { string[] substrings2 = substrings[i].Split(c2); ET.Articulo a = articuloBL.obtener(Convert.ToInt32(substrings2[0])); ET.ArticuloCantidad ac = new ET.ArticuloCantidad() { Id = Convert.ToInt32(substrings2[1]), Articulo = a, PrecioUnitario = a.Precio, Cantidad = Convert.ToInt32(substrings2[2]) }; Pedido.ProductosPedidos.Add(ac); } } }
public List <Articulo> obtenerDestacados() { List <Articulo> articulos = new List <Articulo>(); try { using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ToString())) { con.Open(); //SOLO HAGO LA CARGA DE UNA IMAGEN, NO ES NECESARIO TRAER TODAS LAS IMAGENES DE TODOS LOS ARTICULOS SqlCommand cmd = new SqlCommand("select a.Id as IdArticulo, i.id as IdImagen,* from ARTICULO a, IMAGEN i where i.IdArticulo=a.Id and a.Destacado=1 ORDER BY a.Id", con); using (SqlDataReader dr = cmd.ExecuteReader()) { int ultimoId = 0; while (dr.Read()) { if (ultimoId != Convert.ToInt32(dr["IdArticulo"])) { Articulo articulo = new ET.Articulo { Id = Convert.ToInt32(dr["IdArticulo"]), Codigo = dr["Codigo"].ToString(), Nombre = dr["Nombre"].ToString(), Descripcion = dr["Descripcion"].ToString(), Precio = Convert.ToInt32(dr["Precio"]), Stock = Convert.ToInt32(dr["Stock"]), Disponible = Convert.ToBoolean(Convert.ToInt32(dr["Disponible"])), Destacado = Convert.ToBoolean(Convert.ToInt32(dr["Destacado"])) }; articulo.Imagenes.Add(new Imagen { Id = Convert.ToInt32(dr["IdImagen"]), Img = dr["Imagen"].ToString() }); articulos.Add(articulo); ultimoId = Convert.ToInt32(dr["IdArticulo"]); } } } cmd.CommandText = @"SELECT f.* FROM Filtro_Articulo fa, FILTRO f WHERE f.Id=fa.IdFiltro AND IdArticulo =@id"; foreach (Articulo a in articulos) { //AGREGO FILTROS cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@id", a.Id); using (SqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { Filtro filtro = new Filtro { Id = Convert.ToInt32(dr["Id"]), Nombre = dr["Nombre"].ToString(), Color = Convert.ToBoolean(Convert.ToInt32(dr["Color"])) }; if (a.Filtros == null) { a.Filtros = new List <Filtro>(); } a.Filtros.Add(filtro); } } } } } catch (Exception ex) { throw new ProyectoException("Error: " + ex.Message); } return(articulos); }