Exemplo n.º 1
0
        public async Task <bool> DeleteAll(Expression <Func <T, bool> > query, params Expression <Func <T, object> >[] includes)
        {
            var toRtn = false;

            try
            {
                using (var dbContext = new AuctionsContext())
                {
                    var objs = dbContext.Set <T>().IncludeMultiple(includes).Where(query);

                    foreach (var obj in objs)
                    {
                        dbContext.Set <T>().Remove(obj);
                    }

                    await dbContext.SaveChangesAsync();
                }

                toRtn = true;
            }
            catch (Exception ex)
            {
                var msg = ex.Message;
            }

            return(toRtn);
        }
Exemplo n.º 2
0
        public T GetEntity(long pLonId)
        {
            T lObjEntity = mObjContext.Set <T>().Where(x => x.Removed == false && x.Id == pLonId).FirstOrDefault();

            if (lObjEntity == null)
            {
                throw new Exception("No se encontró el registro.");
            }

            return(lObjEntity);
        }
Exemplo n.º 3
0
        public async Task <List <T> > Search(Expression <Func <T, bool> > query, Expression <Func <T, object> > orderBy = null, int?skip = null, int?take = null, params Expression <Func <T, object> >[] includes)
        {
            try
            {
                using (var dbContext = new AuctionsContext())
                {
                    var s = skip.GetValueOrDefault();
                    var t = take ?? 100000;

                    var q = dbContext.Set <T>().Where(query).IncludeMultiple(includes);

                    if (orderBy != null)
                    {
                        q.OrderBy(orderBy).Skip(s);
                    }


                    var result = await q.Take(t).ToListAsync();

                    return(result);
                }
            }
            catch (Exception ex)
            {
                var msg = ex.Message;
                return(null);
            }
        }
Exemplo n.º 4
0
        public async Task <List <T> > SaveAll(List <T> entities)
        {
            try
            {
                using (var dbContext = new AuctionsContext())
                {
                    foreach (var entity in entities)
                    {
                        dbContext.Set <T>().AddOrUpdate(entity);
                    }

                    await dbContext.SaveChangesAsync();
                }
            }
            catch (DbEntityValidationException e)
            {
                var ls = new List <string>();
                foreach (var eve in e.EntityValidationErrors)
                {
                    var errs = eve.ValidationErrors.Select(x => $"Property: {x.PropertyName}, Error:{x.ErrorMessage}");
                    var msg  = $"Entity of type \"{eve.Entry.Entity.GetType().Name}\" in state \"{eve.Entry.State}\" has the following validation errors: {string.Join(Environment.NewLine, errs)}";
                    ls.Add(msg);
                }

                //logger.Error(string.Join(Environment.NewLine, ls));
                //throw;
            }
            catch (Exception ex)
            {
                var msg = ex.Message;
            }

            return(entities);
        }
Exemplo n.º 5
0
        public async Task <List <T> > GetAll(params Expression <Func <T, object> >[] includes)
        {
            using (var dbContext = new AuctionsContext())
            {
                var result = await dbContext.Set <T>().IncludeMultiple(includes).ToListAsync();

                return(result);
            }
        }
Exemplo n.º 6
0
        public async Task <T> Get(Expression <Func <T, bool> > query, params Expression <Func <T, object> >[] includes)
        {
            using (var dbContext = new AuctionsContext())
            {
                var result = await dbContext.Set <T>().IncludeMultiple(includes).FirstOrDefaultAsync(query);

                return(result);
            }
        }
Exemplo n.º 7
0
        public async Task <T> Save(T entity)
        {
            try
            {
                using (var dbContext = new AuctionsContext())
                {
                    dbContext.Set <T>().AddOrUpdate(entity);
                    await dbContext.SaveChangesAsync();
                }

                return(entity);
            }
            catch (Exception ex)
            {
                var msg = ex.Message;
                return(null);
            }
        }