コード例 #1
0
        public List<Cog.MLIAD.BusinessLogic.Associate.Category> SearchCategory(Associate.Category search, int pageIndex, int pageSize, ref int? count)
        {
            using (AssociateConnDataContext asscon = new AssociateConnDataContext())
            {
                try
                {
                    //int CategoryID = (search.CategoryID == "")?0: Convert.ToInt32(search.CategoryID);
                    var associates = (from a in asscon.SearchCategory(search.CategoryID, search.CategoryDesc, search.IsActive)
                                      select new Cog.MLIAD.BusinessLogic.Associate.Category()
                                      {
                                          CategoryID = a.CategoryID,
                                          CategoryDesc = a.CategoryDesc,
                                          IsActive = a.IsActive
                                      }).ToList<Cog.MLIAD.BusinessLogic.Associate.Category>();

                    List<Cog.MLIAD.BusinessLogic.Associate.Category> list = new List<Cog.MLIAD.BusinessLogic.Associate.Category>();
                    list = associates;

                    pageSize = (pageSize < 1 ? 10 : pageSize);
                    pageIndex = (pageIndex < 0 ? 0 : pageIndex);
                    count = list.Count;
                    if (count < pageSize)
                    {
                        pageIndex = 0;
                        return list;
                    }
                    else if (list.Count < pageSize * pageIndex)
                    {
                        pageIndex = 0;
                        return new List<BusinessLogic.Associate.Category>(list.Take(pageSize));
                    }
                    else
                    {
                        int a = Convert.ToInt32(((count - pageSize * pageIndex) >= pageSize) ? pageSize : (count - pageSize * pageIndex));
                        return new List<BusinessLogic.Associate.Category>(list.Skip(pageSize * pageIndex).Take(a));
                    }

                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }