コード例 #1
0
        public ActionResult Searches()
        {
            try
            {
                var employer = CurrentEmployer;
                var searches = _memberSearchAlertsQuery.GetMemberSearches(employer.Id);
                var alerts   = _memberSearchAlertsQuery.GetMemberSearchAlerts(from s in searches select s.Id, AlertType.AppleDevice);

                var model = new MemberSearchesResponseModel
                {
                    TotalSearches  = searches.Count,
                    MemberSearches = (from s in searches
                                      orderby s.CreatedTime descending
                                      select new MemberSearchModel
                    {
                        Id = s.Id,
                        Name = s.Name,
                        IsAlert = alerts.Any(a => a.MemberSearchId == s.Id),
                        Criteria = s.Criteria,
                    }).ToList()
                };

                return(Json(model, JsonRequestBehavior.AllowGet));
            }
            catch (UserException ex)
            {
                ModelState.AddModelError(ex, new StandardErrorHandler());
            }

            return(Json(new JsonResponseModel(), JsonRequestBehavior.AllowGet));
        }
コード例 #2
0
 protected static void AssertSearches(MemberSearchesResponseModel model, params Tuple <MemberSearch, Tuple <AlertType, bool> >[] expectedSearches)
 {
     AssertJsonSuccess(model);
     Assert.AreEqual(expectedSearches.Length, model.MemberSearches.Count);
     foreach (var expectedSearch in expectedSearches)
     {
         var expectedSearchName = expectedSearch.Item1.Name;
         var searchModel        = (from s in model.MemberSearches where s.Name == expectedSearchName select s).Single();
         AssertSearch(expectedSearch.Item1, expectedSearch.Item2.Item2, searchModel);
     }
 }