public ActionResult GetMyActivity(UserActivitySearchModel search) { if (search == null) { search = new UserActivitySearchModel(); } search.UserId = _sessionContext.CurrentUser.UserId.ToString(); search.PageSize = Convert.ToInt32(ConfigKeys.PageSize); var finalResult = new UserActivityListModel() { PageSize = search.PageSize, CurrentPage = search.CurrentPage }; var response = _customerRepository.UserActivity(search.UserId, search.CurrentPage, search.PageSize); var resp = new List <Activity>() { }; if (response != null && response.Result != null && response.Result.TotalActivity != 0) { finalResult.TotalRecord = response.Result.TotalActivity; finalResult.Sessions = response.Result.Sessions; foreach (var item in response.Result.Sessions) { resp.AddRange(item.Activities); } finalResult.Sessions = (from e in resp group e by e.Created.Year.ToString() + e.Created.Month.ToString() + e.Created.Day.ToString() into g orderby g.Key descending select new UserActivityModel() { FirstActivityCreated = g.Min(a => a.Created), LastActivityCreated = g.Max(a => a.Created), ActivityCount = g.Count(), Activities = g.ToList() }).ToList(); } return(JsonSuccess(finalResult, JsonRequestBehavior.AllowGet)); }