public async Task <ActionResult> BankAccountsData(string sortOrder) { string nameCurrentUser = User.Identity.Name; string idCurrentUser = await UserService.FindUserIdAsync(nameCurrentUser); logger.Info("Клиент {0} запросил информацию о своих незаблокированных банковских счетах", idCurrentUser); IEnumerable <BankAccountUserDTO> bankAccountsUserDTO = await bankAccountService.BankAccountsData(idCurrentUser); var mapper = new MapperConfiguration(cfg => cfg.CreateMap <BankAccountUserDTO, BankAccountUser>()).CreateMapper(); var bankAccountsUser = mapper.Map <IEnumerable <BankAccountUserDTO>, IEnumerable <BankAccountUser> >(bankAccountsUserDTO); switch (sortOrder) { case "Number": bankAccountsUser = bankAccountsUser.OrderBy(bankAccountUser => bankAccountUser.NumberAccount).ToList(); break; case "Number_desc": bankAccountsUser = bankAccountsUser.OrderByDescending(bankAccountUser => bankAccountUser.NumberAccount).ToList(); break; case "Name": bankAccountsUser = bankAccountsUser.OrderBy(bankAccountUser => bankAccountUser.Name).ToList(); break; case "Name_desc": bankAccountsUser = bankAccountsUser.OrderByDescending(bankAccountUser => bankAccountUser.Name).ToList(); break; case "Balance": bankAccountsUser = bankAccountsUser.OrderBy(bankAccountUser => bankAccountUser.Balance).ToList(); break; case "Balance_desc": bankAccountsUser = bankAccountsUser.OrderByDescending(bankAccountUser => bankAccountUser.Balance).ToList(); break; } return(View(bankAccountsUser)); }