public ActionResult Search(string search, int?page, int pageSize) { RolesSearchViewModel model = new RolesSearchViewModel(); model.TotalCount = _iRolesService.GetAll(search).Count(); var pager = new Pager(model.TotalCount, page, pageSize); model.LstRoles = _iRolesService.GetAll(search) .Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList(); model.Pager = pager; return(PartialView("_RolesList", model)); }
public async Task <IActionResult> Index(RolesSearchViewModel searchModel) { var model = await _roleRepository.LoadAsyncCount( this.CurrentPage, this.PageSize, searchModel); this.TotalNumber = model.Item1; ViewBag.SearchModel = searchModel; return(View(model.Item2)); // var model = await _roleRepository.TableNoTracking.Where(a => a.NormalizedName != ImportantNames.AdminNormalTitle()).ProjectTo<RoleManageDTO>().ToListAsync(); }
//public async Task<SweetAlertExtenstion> CheckAndSync(params Assembly[] assemblies) //{ // var controllerInfo = GetDisplayAndNameController(assemblies); // var roles = TableNoTracking.Select(a => a.Name).ToList(); // var roleList = new List<Roles>(); // foreach (var item in controllerInfo) // { // roleList.Add(new Roles() // { // Name = item.Name, // ConcurrencyStamp = Guid.NewGuid().ToString(), // NormalizedName = item.Name.ToUpper().Trim(), // RoleTitle = item.GetCustomAttribute<ControllerRoleAttribute>()?.GetName() // }); // } // roleList = roleList.Where(a => !roles.Contains(a.Name)).ToList(); // await AddRangeAsync(roleList); // return SweetAlertExtenstion.Ok("تمامی اطلاعات ثبت شد"); //} ///// <summary> ///// گرفتن تایپ کنترلر هایی مورد نظر ///// </summary> ///// <param name="assemblies"></param> ///// <returns></returns> //public List<Type> GetDisplayAndNameController(params Assembly[] assemblies) // => typeof(ControllerRoleAttribute).GetTypesHasAttribute(assemblies).ToList(); public async Task <Tuple <int, List <RoleManageDTO> > > LoadAsyncCount( int skip = -1, int take = -1, RolesSearchViewModel model = null) { var query = Entities.Where(a => a.NormalizedName != ImportantNames.AdminNormalTitle()).ProjectTo <RoleManageDTO>(); if (!string.IsNullOrEmpty(model.RoleTitle)) { query = query.Where(x => x.RoleTitle.Contains(model.RoleTitle)); } if (!string.IsNullOrEmpty(model.Name)) { query = query.Where(x => x.Name.Contains(model.Name)); } int Count = query.Count(); query = query.OrderByDescending(x => x.Id); if (skip != -1) { query = query.Skip((skip - 1) * take); } if (take != -1) { query = query.Take(take); } return(new Tuple <int, List <RoleManageDTO> >(Count, await query.ToListAsync())); }
public ActionResult Index(int?page) { if (TempData["Message"] != null) { ViewBag.Message = TempData["Message"]; } RolesSearchViewModel model = new RolesSearchViewModel(); try { model.TotalCount = _iRolesService.GetAll().Count(); var pager = new Pager(model.TotalCount, page); model.LstRoles = _iRolesService.GetAll() .Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList(); model.Pager = pager; return(View(model)); } catch (Exception ex) { ViewBag.Message = helper.GenerateMessage(" " + ex.Message, MessageType.Error); } return(View(model)); }