Ejemplo n.º 1
0
        public async Task <IActionResult> Details(int?id, int?pageNumber)
        {
            if (id == null)
            {
                return(NotFound());
            }



            var user = _userService.GetUsers(id).Select(p => new UserViewModel {
                FacebookId  = p.FacebookId,
                DisplayName = p.DisplayName
            }).FirstOrDefault();

            var commentsQuery = _ICommentService.GetCommentsByUserId(id).GroupBy(cP => new { cP.StreamSessonId }).Select(p => new StreamSessonViewModel {
                CreatedDate = p.FirstOrDefault().CreatedDate,
                Comments    = p.Select(pC => new CommentViewModel {
                    DisplayName = pC.DisplayName,
                    CreatedDate = pC.CreatedDate,
                    Message     = pC.Message
                }).ToList()
            });

            commentsQuery.OrderBy(p => p.CreatedDate);


            int pageSize = 5;

            var comments = await PaginatedList <StreamSessonViewModel> .CreateAsync(commentsQuery.AsNoTracking(), pageNumber ?? 1, pageSize);



            var result = new UserViewDetailModel(user, comments);

            return(View(result));
        }
Ejemplo n.º 2
0
        public ActionResult ViewDetail(UserViewDetailModel model)
        {
            if (!Request.IsAjaxRequest())
            {
                IUser         user      = _service.GetUserByUsername(Request.QueryString["userName"]);
                UserModel     userModel = new UserModel(user);
                IList <IRole> roleList  = _service.GetRoles(string.Empty);
                userModel.Roles = roleList.Where(r => user.RoleIds.Contains(r.Id)).Select(r => r.Name).ToList();

                return(View(userModel));
            }
            IPagedList <UserActivity> list      = _service.GetUserActivities(model.PageIndex, model.PageSize, model.UserId);
            List <UserActivityModel>  modelList = new List <UserActivityModel>();

            foreach (UserActivity ua in list)
            {
                UserActivityModel uaModel = new UserActivityModel();
                uaModel.CreatedOn = ua.CreatedOn;
                uaModel.Activity  = _resourceManager.GetString("UserActivityType_" + ua.UserActivityType.ToString());

                modelList.Add(uaModel);
            }
            return(DataTableResult(modelList, list.TotalCount, model.Draw));
        }