コード例 #1
0
 public List<UserProfile> GetFilteredProfiles(Search search)
 {
     List<UserProfile> list;
     try
     {
         list =
                 entity.UserProfiles.Where(
                     x => (x.Gender.Equals(search.Gender) && 
                         ((search.AgeFrom == 0 || (x.Age >= search.AgeFrom)) && (search.AgeTo == 0 || x.Age <= search.AgeTo)) && 
                         (string.IsNullOrEmpty(search.City) || search.City==x.City) && 
                         (string.IsNullOrEmpty(search.MaritalStatus)  || x.MaritalStatus.Equals(search.MaritalStatus))))
                     .Select(x => x)
                     .ToList();
     }
     catch (Exception e)
     {
         return null;
     }
     return list;
 }
コード例 #2
0
        public ActionResult SearchResults()
        {
            string city = Request["city"];
            int age = int.Parse(Request["age"]);
            string gender = Request["gender"];
            string maritalStatus = Request["maritalStatus"];
            if (maritalStatus.Equals("Never"))
                maritalStatus = "Never Married";
            int fromAge = 0;
            int toAge = 0;

            if (age == 0)
            {
                fromAge = 0;
                toAge = 200;
            }
            if (age == 1)
            {
                fromAge = 18;
                toAge = 25;
            }
            if (age == 2)
            {
                fromAge = 26;
                toAge = 30;
            }
            if (age == 3)
            {
                fromAge = 31;
                toAge = 40;
            }
            if (age == 4)
            {
                fromAge = 41;
                toAge = 200;
            }

            List<UserProfileModel> list;
            Search searchRequest = new Search
            {
                AgeFrom = fromAge,
                AgeTo = toAge,
                City = city,
                Gender = gender,
                MaritalStatus = maritalStatus
            };

            list = _entityUser.GetFilteredProfiles(searchRequest).ToList().Select(x => x.MapServerToClient()).ToList();

            return View("_SearchResults",list);
        }