Está en la página 1de 3

using using using using using using

System; System.Collections.Generic; System.Linq; System.Text; TiendaVirtual.AccesoDatos; TiendaVirtual.Entidades;

namespace TiendaVirtual.Logica { public class TiendaLN { public List<Producto> ListarUltimosProductos() { TiendaAD tiendaAD = new TiendaAD(); List<Producto> productos = tiendaAD.ListarUltimosProductos(); return productos; } } }

using using using using

System; System.Collections.Generic; System.Linq; System.Text;

namespace TiendaVirtual.Entidades { public class Producto { public int Id { get; set; } public string Nombre { get; set; } public string Descripcion {get;set;} public decimal Precio { get; set; } public string Imagen { get; set; } } }

using using using using using

System; System.Collections.Generic; System.Linq; System.Text; TiendaVirtual.Entidades;

namespace TiendaVirtual.AccesoDatos { //recuerda volverla public public class TiendaAD { public List<Producto> ListarUltimosProductos() { List<Producto> lista=new List<Producto>(); //aca debe ir todo el codigo de abrir conexion y leer datos string query = "SELECT TOP 6 * FROM Productos"; List<object[]> datos=BaseDatos.EjecutarQuery(query); foreach (object[] registro in datos) { Producto p = new Producto(); p.Id =Convert.ToInt32 (registro[0]); p.Nombre = registro[1].ToString(); p.Descripcion = registro[2].ToString(); p.Precio = Convert.ToDecimal(registro[3]); p.Imagen = registro[4].ToString(); lista.Add(p); } return lista; } } } using using using using using using using

System; System.Collections.Generic; System.Linq; System.Text; System.Data.SqlClient; System.Data; System.Configuration;

namespace TiendaVirtual.AccesoDatos { public static class BaseDatos { //metodo generico public static List<object[]> EjecutarQuery(string query) { List<object[]> datos = new List<object[]>(); string cadenaConexion= ConfigurationManager.ConnectionStrings["TiendaVirtual"].ConnectionString; using (SqlConnection conexion = new SqlConnection(cadenaConexion)) { conexion.Open(); SqlCommand comando= new SqlCommand(query,conexion);

using (IDataReader dr = comando.ExecuteReader()) { while (dr.Read()) { object[] valores =new object[dr.FieldCount]; //longitud dr.GetValues(valores); datos.Add(valores); } } } return datos; } } }

También podría gustarte