コード例 #1
0
        private async Task <IActionResult> UsersInRole(string role)
        {
            var model = new AllProfilesViewModel()
            {
                Users    = (await userManager.GetUsersInRoleAsync(role)).ToList(),
                Messages = _context.Messages.Include(m => m.Author).ToList()
            };

            ViewData["ListTitle"] = char.ToUpper(role[0]) + role.Substring(1) + "s";
            return(View("~/Views/Profile/AllProfiles.cshtml", model));
        }
コード例 #2
0
        public AllProfilesViewModel GetAllUsers(UserSearchViewModel userSearchViewModel)
        {
            var outputModel = new AllProfilesViewModel();

            outputModel.PageIndex = userSearchViewModel.PageIndex;
            var allUsers = this.context.UserProfiles.ToList();

            if (userSearchViewModel != null)
            {
                if (!string.IsNullOrEmpty(userSearchViewModel.UsernameSearch))
                {
                    allUsers = allUsers.Where(u => u.Username.Contains(userSearchViewModel.UsernameSearch)).ToList();
                }
                if (!string.IsNullOrEmpty(userSearchViewModel.FirstNameSearch))
                {
                    allUsers = allUsers.Where(u => u.FirstName.Contains(userSearchViewModel.FirstNameSearch)).ToList();
                }
                if (!string.IsNullOrEmpty(userSearchViewModel.LastNameSearch))
                {
                    allUsers = allUsers.Where(u => u.LastName.Contains(userSearchViewModel.LastNameSearch)).ToList();
                }
                if (!string.IsNullOrEmpty(userSearchViewModel.EmailSearch))
                {
                    allUsers = allUsers.Where(u => u.Email.Contains(userSearchViewModel.EmailSearch)).ToList();
                }
            }
            outputModel.TotalItems = allUsers.Count;
            if (userSearchViewModel.PageSize == 0)
            {
                outputModel.Items = allUsers;
            }
            if (userSearchViewModel != null && userSearchViewModel.PageIndex > 0 && userSearchViewModel.PageSize > 0)
            {
                outputModel.Items = allUsers.Skip((userSearchViewModel.PageIndex - 1) * userSearchViewModel.PageSize).Take(userSearchViewModel.PageSize).ToList();
            }
            return(outputModel);
        }