Beispiel #1
0
        public void Search(int?key, SearchProfileCriteriaModel model)
        {
            var data         = Mapper.Map <SearchProfileCriteria>(model);
            var pageIndex    = (key ?? 1);
            var searchResult = _searchService.SearchProfiles(data, pageIndex, PageSize);
            var list         = new List <ApiProfileInfo>(searchResult.Profiles.Count());

            list.AddRange(searchResult.Profiles.Select(profile => new ApiProfileInfo {
                Id = profile.Id, Guid = profile.Guid, Name = profile.Name, Email = profile.User.Email, UserName = profile.User.UserName, ProfilePhotoGuid = profile.ProfilePhotoGuid, Country = profile.Location.CountryName, Age = DateTime.Now.Year - profile.BirthYear
            }));
            var result = new ApiSearchResult {
                PageIndex = pageIndex,
                PageSize  = PageSize,
                Profiles  = list,
                Total     = searchResult.Total
            };

            Response.ContentType = "application/json";
            Response.Write(JsonConvert.SerializeObject(result));
        }
        private ActionResult SearchProfile(int?key, SearchProfileCriteriaModel model)
        {
            var data         = Mapper.Map <SearchProfileCriteria>(model);
            var pageIndex    = (key ?? 1);
            var searchResult = _searchService.SearchProfiles(data, pageIndex, PageSize);

            if (searchResult.Total > -1)
            {
                var profiles             = searchResult.Profiles;
                var profilesModel        = Mapper.Map <IList <ProfileModel> >(profiles);
                var profilesAsIPagedList = new StaticPagedList <ProfileModel>(profilesModel, pageIndex, PageSize, searchResult.Total);
                var searchResultModel    = new SearchProfileResultModel {
                    FacetValues    = searchResult.FacetValues,
                    SearchCriteria = Mapper.Map <SearchProfileCriteriaModel>(searchResult.SearchCriteria),
                    Total          = searchResult.Total,
                    Profiles       = profilesAsIPagedList
                };
                ViewBag.KatushaSearchResult = searchResultModel;
                return(View("Search", searchResultModel));
            }
            return(View("Search", new SearchProfileResultModel {
                SearchCriteria = model
            }));
        }
 public ActionResult Girls(int?key, SearchProfileCriteriaModel model)
 {
     model.Gender = Sex.Female; return(SearchProfile(key, model));
 }