コード例 #1
0
        public async Task <IActionResult> UpdateProfileAsync([FromBody] LecturerProfileViewModel lecturerProfileViewModel)
        {
            var userId = Request.GetUserId();
            await _userService.UpdateUserRoleProfile <LecturerProfile, LecturerProfileViewModel>(userId, lecturerProfileViewModel)
            .ConfigureAwait(false);

            return(Ok());
        }
コード例 #2
0
        public IActionResult Profile()
        {
            string login = HttpContext.Session.GetString("Login");

            if (string.IsNullOrWhiteSpace(login))
            {
                return(RedirectToAction("Login"));
            }
            var            allStudentScores = _dbContext.StudentScores;
            List <Lecture> lectures         = _dbContext.Lecture.ToList();

            if (login == "Lecturer")
            {
                var lecturerProfileModel = new LecturerProfileViewModel
                {
                    Lectures         = new List <string>(),
                    AllStudentScores = new Dictionary <string, List <int> >()
                };
                foreach (var lec in lectures)
                {
                    lecturerProfileModel.Lectures.Add(lec.Name);
                }
                foreach (var stud in allStudentScores)
                {
                    lecturerProfileModel.AllStudentScores.Add(stud.StudentName, stud.GetScoresAsCollection().ToList());
                }
                return(View("LecturerProfile", lecturerProfileModel));
            }
            else
            {
                StudentScores studentScores    = allStudentScores.FirstOrDefault(i => i.StudentName == login);
                var           profileViewModel = new ProfileViewModel
                {
                    UserName = studentScores.StudentName,
                    Scores   = new List <int>(),
                    Lectures = new List <string>()
                };
                foreach (var lec in lectures)
                {
                    profileViewModel.Lectures.Add(lec.Name);
                }
                var studentScoresResult = studentScores.GetScoresAsCollection();
                for (int i = 0; i < lectures.Count(); ++i)
                {
                    profileViewModel.Scores.Add(studentScoresResult.ElementAt(i));
                }
                return(View("Profile", profileViewModel));
            }
        }