コード例 #1
0
        public JsonResult OnGetListAsync(string q, int?page)
        {
            var query = (from a in _context.Country
                         select a
                         );

            if (!string.IsNullOrWhiteSpace(q))
            {
                query = query.Where(u => u.Name.Contains(q));
            }

            X.PagedList.IPagedList <Country> pagedCountries = query.ToPagedList(page ?? 1, 30);
            List <Select2ResultDTO>          result         = new List <Select2ResultDTO>();

            foreach (var item in pagedCountries)
            {
                Select2ResultDTO temp = new Select2ResultDTO();
                temp.id   = item.Id.ToString();
                temp.text = item.Name;
                result.Add(temp);
            }
            Select2PaginateDTO select2PaginateDTO = new Select2PaginateDTO();

            select2PaginateDTO.more = pagedCountries.HasNextPage;
            Select2DTO select2DTO = new Select2DTO();

            select2DTO.results  = result;
            select2DTO.paginate = select2PaginateDTO;
            return(new JsonResult(select2DTO));
        }
コード例 #2
0
ファイル: M_RegionDAO.cs プロジェクト: tonchilling/PTTDA
        public List <Select2DTO> Select2ByObjList(object data)
        {
            List <SqlParameter> parameterList  = new List <SqlParameter>();
            List <Select2DTO>   select2ObjList = new List <Select2DTO>();
            Select2DTO          select2Obj     = null;

            dataTable = null;

            string procName = "sp_M_Region_FindByColumn";

            try
            {
                dataTable = new DataTable();
                adapter   = new SqlDataAdapter();
                SqlConnection conn = OpenConnection();
                if (data != null)
                {
                    parameterList.AddRange(GetParameters(procName, data).ToArray());
                }
                command             = new SqlCommand(procName, conn);
                command.CommandType = CommandType.StoredProcedure;
                if (data != null)
                {
                    command.Parameters.AddRange(parameterList.ToArray());
                }



                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        select2Obj      = new Select2DTO();
                        select2Obj.id   = reader["RegionID"].ToString();
                        select2Obj.text = reader["Name"].ToString();

                        select2ObjList.Add(select2Obj);
                    }
                }
            }
            catch (Exception ex) { }
            finally
            {
                CloseConnection();
            }
            return(select2ObjList);
        }
コード例 #3
0
        public Select2DTO GetAirport(string q, int?page)
        {
            try
            {
                var query = db.Airport.AsQueryable();

                if (!String.IsNullOrWhiteSpace(q))
                {
                    query = query.Where(e =>
                                        e.Name.Contains(q) ||
                                        e.Icao.Contains(q) ||
                                        e.Iata.Contains(q));
                }
                X.PagedList.IPagedList <Airport> pagedAirports = query.ToPagedList(page ?? 1, 30);
                List <Select2ResultDTO>          result        = new List <Select2ResultDTO>();
                foreach (var item in pagedAirports)
                {
                    Select2ResultDTO temp = new Select2ResultDTO
                    {
                        id   = item.Id.ToString(),
                        text = $"{item.Name}"
                    };
                    result.Add(temp);
                }
                Select2PaginateDTO select2PaginateDTO = new Select2PaginateDTO
                {
                    more = pagedAirports.HasNextPage
                };
                Select2DTO select2DTO = new Select2DTO
                {
                    results  = result,
                    paginate = select2PaginateDTO,
                };
                return(select2DTO);
            }
            catch (Exception e)
            {
                throw;
            }
        }
コード例 #4
0
        public Select2DTO SearchItems(string q, int?page)
        {
            try
            {
                List <Select2ResultDTO> result = new List <Select2ResultDTO>();

                foreach (var item in db.Airport.Include(a => a.City.Country.Continent).Where(x => x.Name.Contains(q) || x.Iata.Contains(q) || x.Icao.Contains(q)).ToPagedList(page ?? 1, 30))
                {
                    Select2ResultDTO airport = new Select2ResultDTO();
                    airport.id   = "ai_" + item.Id.ToString();
                    airport.text = item.Name;
                    result.Add(airport);
                }

                foreach (var item in db.City.Include(a => a.Country.Continent).Where(x => x.Name.Contains(q)).ToPagedList(page ?? 1, 30))
                {
                    Select2ResultDTO city = new Select2ResultDTO();
                    city.id   = "ci_" + item.Id.ToString();
                    city.text = item.Name;
                    if (!result.Contains(city))
                    {
                        result.Add(city);
                    }
                }

                foreach (var item in db.Country.Include(a => a.Continent).Where(x => x.Name.Contains(q)).ToPagedList(page ?? 1, 30))
                {
                    Select2ResultDTO country = new Select2ResultDTO();
                    country.id   = "co_" + item.Id.ToString();
                    country.text = item.Name;
                    if (!result.Contains(country))
                    {
                        result.Add(country);
                    }
                }
                if (result.Count() == 0)
                {
                    foreach (var item in db.Airport.Include(a => a.City.Country.Continent).ToPagedList(page ?? 1, 30))
                    {
                        Select2ResultDTO airport = new Select2ResultDTO();
                        airport.id   = "ai_" + item.Id.ToString();
                        airport.text = item.Name;
                        result.Add(airport);
                    }
                }
                //if (q != null)
                //{
                //    if (q.Length >= 3)
                //    {
                //        var oldTerm = db.SearchTerm.Where(st => st.Keyword == q).FirstOrDefault();
                //        if (oldTerm != null)
                //        {
                //            oldTerm.Count++;
                //            db.Entry(oldTerm).State = EntityState.Modified;
                //            db.SaveChanges();
                //        }
                //        else
                //        {
                //            SearchTerm searchTerm = new SearchTerm();
                //            searchTerm.Keyword = q;
                //            searchTerm.Count = 1;
                //            db.SearchTerm.Add(searchTerm);
                //            db.SaveChanges();
                //        }
                //    }
                //}
                IPagedList <Select2ResultDTO> pagedResult        = result.ToPagedList(page ?? 1, 90);
                Select2PaginateDTO            select2PaginateDTO = new Select2PaginateDTO();
                select2PaginateDTO.more = pagedResult.HasNextPage;
                Select2DTO select2DTO = new Select2DTO();
                select2DTO.results  = pagedResult.ToList();
                select2DTO.paginate = select2PaginateDTO;
                return(select2DTO);
            }
            catch (Exception e)
            {
                Select2DTO select2DTO = new Select2DTO();
                var        Log        = new Log()
                {
                    Message = e.Message,
                };
                db.Log.Add(Log);
                db.SaveChanges();
                return(select2DTO);

                //throw;
            }
        }