コード例 #1
0
 public virtual void Delete(params T[] items)
 {
     using (StockPortfolioManagerContext context = new StockPortfolioManagerContext())
     {
         foreach (T item in items)
         {
             context.Entry(item).State = EntityState.Deleted;
         }
         context.SaveChanges();
     }
 }
コード例 #2
0
        public virtual IList <T> GetList(Func <T, bool> where, params Expression <Func <T, object> >[] navProperties)
        {
            List <T> list;

            using (StockPortfolioManagerContext context = new StockPortfolioManagerContext())
            {
                IQueryable <T> dbQuery = context.Set <T>();

                foreach (Expression <Func <T, object> > navigationProperty in navProperties)
                {
                    dbQuery = dbQuery.Include <T, object>(navigationProperty);
                }

                list = dbQuery.AsNoTracking().Where(where).AsQueryable <T>().ToList <T>();
            }

            return(list);
        }
コード例 #3
0
        public virtual T GetSingle(Func <T, bool> where, params Expression <Func <T, object> >[] navProperties)
        {
            T item = null;

            using (StockPortfolioManagerContext context = new StockPortfolioManagerContext())
            {
                IQueryable <T> dbQuery = context.Set <T>();

                foreach (Expression <Func <T, object> > navigationProperty in navProperties)
                {
                    dbQuery = dbQuery.Include <T, object>(navigationProperty);
                }

                item = dbQuery.AsNoTracking().FirstOrDefault(where);
            }

            return(item);
        }
コード例 #4
0
        public IList <T> GetList(Func <T, bool> where, out int TotalPages, int pageIndex = 0, int pageSize = 20, params Expression <Func <T, object> >[] navProperties)
        {
            List <T> list;

            using (StockPortfolioManagerContext context = new StockPortfolioManagerContext())
            {
                IQueryable <T> dbQuery = context.Set <T>();

                foreach (Expression <Func <T, object> > navigationProperty in navProperties)
                {
                    dbQuery = dbQuery.Include <T, object>(navigationProperty);
                }

                dbQuery = dbQuery.AsNoTracking().Where(where).AsQueryable <T>().Paged <T>(pageIndex, pageSize, out TotalPages);

                list = dbQuery.ToList <T>();
            }
            return(list);
        }
コード例 #5
0
        public virtual IList <T> GetAll(params Expression <Func <T, object> >[] navProperties)
        {
            List <T> list;

            using (StockPortfolioManagerContext context = new StockPortfolioManagerContext())
            {
                IQueryable <T> dbQuery = context.Set <T>();

                if (navProperties != null)
                {
                    dbQuery = navProperties.Aggregate(dbQuery, (current, include) => current.Include(include));
                }

                foreach (Expression <Func <T, object> > navigationProperty in navProperties)
                {
                    dbQuery = dbQuery.Include <T, object>(navigationProperty);
                }

                list = dbQuery.AsNoTracking().ToList <T>();
            }

            return(list);
        }