예제 #1
0
 public List <T> Filter(Expression <Func <T, bool> > predicate)
 {
     using (LibertadContext context = new LibertadContext())
     {
         return((List <T>)context.Set <T>().Where(predicate).ToList());
     }
 }
예제 #2
0
 public List <T> GetAll()
 {
     using (LibertadContext context = new LibertadContext())
     {
         return((List <T>)context.Set <T>().ToList());
     }
 }
예제 #3
0
 public T Single(Expression <Func <T, bool> > predicate)
 {
     using (LibertadContext context = new LibertadContext())
     {
         return(context.Set <T>().FirstOrDefault(predicate));
     }
 }
예제 #4
0
 public void Delete(T entity)
 {
     using (LibertadContext context = new LibertadContext())
     {
         context.Entry(entity).State = EntityState.Deleted;
         context.SaveChanges();
     }
 }
예제 #5
0
 public void Create(T entity)
 {
     using (LibertadContext context = new LibertadContext())
     {
         context.Set <T>().Add(entity);
         context.SaveChanges();
     }
 }
예제 #6
0
 public void Delete(Expression <Func <T, bool> > predicate)
 {
     using (LibertadContext context = new LibertadContext())
     {
         var entities = context.Set <T>().Where(predicate).ToList();
         entities.ForEach(x => context.Entry(x).State = EntityState.Deleted);
         context.SaveChanges();
     }
 }
예제 #7
0
 public List <ArticulosSearch> BuscarArticuloPorDescipcion(int sucursal, string descripcion)
 {
     try
     {
         using (var ctx = new LibertadContext())
         {
             var pSurcusal    = new OracleParameter("p_sucursal", sucursal);
             var pDescripcion = new OracleParameter("p_desc_articulo", descripcion);
             var cCursor      = new OracleParameter("c_articulo", OracleDbType.RefCursor, ParameterDirection.Output);
             return(ctx.Database.SqlQuery <ArticulosSearch>("BEGIN  LI_PKG_ARTICULO_CONSULTA.P_BUSCAR_ARTICULO_DESCRIPCION(:p_sucursal, :p_desc_articulo, :c_articulo); end; ",
                                                            pSurcusal,
                                                            pDescripcion,
                                                            cCursor).ToList());
         }
     }
     catch
     {
         throw;
     }
 }
예제 #8
0
        public List <EanArticulo> BuscarEansArticulo(Articulo articulo, int sucursal)
        {
            try
            {
                using (var ctx = new LibertadContext())
                {
                    var pSurcusal       = new OracleParameter("p_sucursal", sucursal);
                    var pCodigoArticulo = new OracleParameter("p_CodigoArticulo", articulo.CodigoArticulo);
                    var cCursor         = new OracleParameter("c_datosEAN", OracleDbType.RefCursor, ParameterDirection.Output);

                    return(ctx.Database.SqlQuery <EanArticulo>("BEGIN  LI_PKG_ARTICULO_CONSULTA.P_BUSCAR_EANS(:p_sucursal, :p_CodigoArticulo, :c_datosEAN); end; ",
                                                               pSurcusal,
                                                               pCodigoArticulo,
                                                               cCursor).ToList());
                }
            }
            catch
            {
                throw;
            }
        }
예제 #9
0
        public Articulo BuscarDatosGeneralesArticulo(int sucursal, string CodigoArticulo)
        {
            try
            {
                using (var ctx = new LibertadContext())
                {
                    var pSurcusal       = new OracleParameter("p_sucursal", sucursal);
                    var pCodigoArticulo = new OracleParameter("p_CodigoArticulo", CodigoArticulo);
                    var cCursor         = new OracleParameter("c_datosArticulo", OracleDbType.RefCursor, ParameterDirection.Output);

                    return(ctx.Database.SqlQuery <Articulo>("BEGIN  LI_PKG_ARTICULO_CONSULTA.P_BUSCAR_DATOS_GENERALES(:p_sucursal, :p_CodigoArticulo, :c_datosArticulo); end; ",
                                                            pSurcusal,
                                                            pCodigoArticulo,
                                                            cCursor).FirstOrDefault());
                }
            }
            catch
            {
                throw;
            }
        }
예제 #10
0
        public Estadistico BuscarEstadistico(Articulo articulo, EstadisticoEnum estadisticoEnum)
        {
            try
            {
                using (var ctx = new LibertadContext())
                {
                    var pCodigoArticulo  = new OracleParameter("p_CodigoArticulo", articulo.CodigoArticulo);
                    var pTipoEstadistico = new OracleParameter("p_TipoEstadistico", (int)estadisticoEnum);

                    var cCursor = new OracleParameter("c_datosEstadistico", OracleDbType.RefCursor, ParameterDirection.Output);

                    return(ctx.Database.SqlQuery <Estadistico>("BEGIN  LI_PKG_ARTICULO_CONSULTA.P_BUSCAR_DATOS_ESTADISTICO(:p_CodigoArticulo, :p_TipoEstadistico, :c_datosEstadistico); end; ",
                                                               pCodigoArticulo,
                                                               pTipoEstadistico,
                                                               cCursor).FirstOrDefault());
                }
            }
            catch
            {
                throw;
            }
        }
예제 #11
0
        public List <T> Filter(Expression <Func <T, bool> > predicate, List <Expression <Func <T, object> > > includes)
        {
            List <string> includelist = new List <string>();

            foreach (var item in includes)
            {
                MemberExpression body = item.Body as MemberExpression;
                if (body == null)
                {
                    throw new ArgumentException("The body must be a member expression");
                }

                includelist.Add(body.Member.Name);
            }

            using (LibertadContext context = new LibertadContext())
            {
                DbQuery <T> query = context.Set <T>();

                includelist.ForEach(x => query = query.Include(x));

                return((List <T>)query.Where(predicate).ToList());
            }
        }