コード例 #1
0
        private async Task <UserGradeViewModel> GetUserGradeViewModelFromUser(ApplicationUser user)
        {
            UserGradeViewModel viewModel = new UserGradeViewModel();

            viewModel.User = user;
            List <Grade> grades = await _context.Grades.Where(m => m.User == user).ToListAsync();

            viewModel.Grades = grades;
            return(viewModel);
        }
コード例 #2
0
        public async Task <IActionResult> UserGrade()
        {
            var user = await _userManager.GetUserAsync(HttpContext.User);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"User cannot be found";
                return(View("~/Views/Account/Login.cshtml"));
            }

            UserGradeViewModel model = await GetUserGradeViewModelFromUser(user);

            return(View(model));
        }
コード例 #3
0
        public async Task <IActionResult> UserGradeWithID(string userId)
        {
            ViewBag.userId = userId;

            var user = await _userManager.FindByIdAsync(userId);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"User cannot be found";
                return(View("NotFound"));
            }

            UserGradeViewModel model = await GetUserGradeViewModelFromUser(user);

            return(View("UserGrade", model));
        }
コード例 #4
0
        public async Task <IActionResult> UserGrade([Bind("UserId,Mark,Subject")] UserGradeViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                Grade grade = new Grade();
                grade.Mark    = viewModel.Mark;
                grade.Subject = viewModel.Subject;
                var user = await _context.ApplicationUser.SingleOrDefaultAsync(m => m.Id == viewModel.UserId);

                if (user == null)
                {
                    ViewBag.ErrorMessage = $"User cannot be found";
                    return(View("NotFound"));
                }
                grade.User = user;
                _context.Grades.Add(grade);
                await _context.SaveChangesAsync();

                viewModel = await GetUserGradeViewModelFromUser(user);
            }
            return(View(viewModel));
        }