public List <BaseDTO> ListaProductosPorTipo(ProductoDTO productoDTO) { List <BaseDTO> respuesta = new List <BaseDTO>(); try { ClaseEjemploDatos intermedioDatos = new ClaseEjemploDatos(this.contexto); var respuestaDatos = intermedioDatos.ListarProductosPorTipo(productoDTO.TipoProducto); if (respuestaDatos.CodigoRespuesta == 1) { var lista = ((List <Producto>)respuestaDatos.ContenidoRespuesta); for (int i = 0; i < lista.Count; i++) { respuesta.Add(ConvertirDatosProductoADTO(lista[i])); } return(respuesta); } else { respuesta.Clear(); respuesta.Add((ErrorDTO)respuestaDatos.ContenidoRespuesta); return(respuesta); } } catch (Exception error) { respuesta.Clear(); respuesta.Add(new ErrorDTO { MensajeError = error.Message }); return(respuesta); } }
public List <BaseDTO> ObtenerProductoPorTipo(int tipoProducto) { try { ClaseEjemploDatos intermedioDatos = new ClaseEjemploDatos(this.contexto); var respuestaDatos = intermedioDatos.ListarProductosPorTipo(tipoProducto); if (respuestaDatos.CodigoRespuesta == 1) { List <BaseDTO> respuestaProductos = new List <BaseDTO>(); // llamada exitosa foreach (var item in (List <Producto>)respuestaDatos.ContenidoRespuesta) { respuestaProductos.Add(ConvertirDatosProductoADTO(item)); } return(respuestaProductos); } else { // Error controlado // return new List<BaseDTO> { (ErrorDTO)respuestaDatos.ContenidoRespuesta }; // opcion 1 throw new Exception(((ErrorDTO)respuestaDatos.ContenidoRespuesta).MensajeError); // opcion 2 } } catch (Exception error) { return(new List <BaseDTO> { new ErrorDTO { MensajeError = error.Message } }); } }