1
resposta

Atualizar dados que tem relação de muitos para muitos com Entity Framework

Estou tentando atualizar um objeto e a unica coisa que não atualiza é o relacionamento dele de muitos para muitos o restante como nome e sobrenome atualizam

        [HttpPost]
        public IActionResult AtualizarProfessor(int id, string nome, string sobrenome, List<int> listaDeIdDasTurmas)
        {

            Professor professor = new Professor(nome, sobrenome);
            professor.Id = id;
            if (listaDeIdDasTurmas == null || listaDeIdDasTurmas.Count() == 0)
                return View();

            foreach (var turmaId in listaDeIdDasTurmas)
            {
                Turma turma = _turmaRepository.ObterTurmaPeloId(turmaId);

                if (turma == null || turma.Id == 0)
                    return View();

                var professorturma = new ProfessorTurma();

                professorturma.ProfessorId = professor.Id;
                professorturma.TurmaId = turma.Id;

                professor.Turmas.Add(professorturma);
            }

            if (!professor.ValidaProfessor())
            {
                ViewData["Message"] = "Envie os dados do professor de forma correta!";
                return View();
            }
            else
            {
                _professorRepository.Atualizar(professor);
            }

            return RedirectToAction("cadastrarprofessor", "Admin");
        }
        public void Atualizar(Professor professor)
        {
            using (var contexto = new MinosContext())
            {
                contexto.Professores.Update(professor);
                contexto.SaveChanges();
            }
        }
1 resposta

Tenta dar rebuild no projeto