Пример #1
0
        public async Task <ActionResult> DeleteAJAX(string id, string connectionId)
        {
            try
            {
                // Удаляемый пользователь
                var user = await _userManager.FindByIdAsync(id);

                var result = await _userManager.DeleteAsync(user);

                if (result.Succeeded)
                {
                    // Удаление заявок и предложений, созданных пользователем
                    await _proposalRepository.RemoveProposals(user.UserName);

                    await _requisitionRepository.RemoveRequisitions(user.UserName);

                    // Удаление фото пользователя из базы
                    await _userImageRepository.RemoveUserImage(user.UserName, _environment);

                    // Удаление счетчика прочитанных новостей
                    await _readedNoticeRepository.RemoveUserReadedNoticesCounter(user.Id);

                    await _hub.Clients.Client(connectionId).SendAsync("Success", Messages.successDeleteMessage);

                    return(PartialView("_Table", await _userManager.Users.Where(i => i.UserName != "root").ToListAsync()));
                }
                else
                {
                    throw new Exception();
                } // if
            }
            catch
            {
                await _hub.Clients.Client(connectionId).SendAsync("Error", Messages.deleteErrorMessage);

                return(PartialView("_Table", await _userManager.Users.Where(i => i.UserName != "root").ToListAsync()));
            } //try-catch
        }     // DeleteAJAX