public async Task <IActionResult> Edit(int id, [Bind("Id,Descricao,AvaliacaoId")] PerguntaAvaliacao perguntaAvaliacao) { if (id != perguntaAvaliacao.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _dbContext.Update(perguntaAvaliacao); await _dbContext.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PerguntaAvaliacaoExists(perguntaAvaliacao.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index", "Avaliacoes", new { perguntaId = perguntaAvaliacao.Id })); } return(View(perguntaAvaliacao)); }
// GET: Avaliacoes public async Task <IActionResult> Index(int?id, int?perguntaId) { var viewModel = new AvaliacoesVM { Avaliacoes = await _context.Avaliacoes .Include(a => a.Perguntas) .ThenInclude(p => p.Respostas) .AsNoTracking() .ToListAsync() }; if (perguntaId != null) { viewModel.PerguntaId = perguntaId.Value; PerguntaAvaliacao perguntaAvaliacao = await _context.PerguntasAvaliacao.SingleOrDefaultAsync(pa => pa.Id == perguntaId.Value); viewModel.RespostasAvaliacao = await _context.RespostasAvaliacao.Where(ra => ra.PerguntaAvaliacaoId == perguntaId).ToListAsync(); id = perguntaAvaliacao.AvaliacaoId; } if (id != null) { viewModel.SelectedId = id.Value; Avaliacao avaliacao = viewModel.Avaliacoes.Single(a => a.Id == id.Value); viewModel.PerguntasAvaliacao = avaliacao.Perguntas.Where(pa => pa.AvaliacaoId == id.Value).ToList(); } return(View(viewModel)); }
public async Task <IActionResult> Create([Bind("Id,AvaliacaoId,Descricao")] PerguntaAvaliacao perguntaAvaliacao) { if (ModelState.IsValid) { _dbContext.Add(perguntaAvaliacao); await _dbContext.SaveChangesAsync(); return(RedirectToAction("Index", "Avaliacoes", new { perguntaId = perguntaAvaliacao.Id })); } return(View(perguntaAvaliacao)); }
public async Task <IActionResult> Create([Bind("Id,PerguntaAvaliacaoId,Descricao,Correta,Escolhida")] RespostaAvaliacao respostaAvaliacao) { if (ModelState.IsValid) { _context.Add(respostaAvaliacao); await _context.SaveChangesAsync(); //return RedirectToAction(nameof(Index)); PerguntaAvaliacao perguntaAvaliacao = await _context.PerguntasAvaliacao.FirstOrDefaultAsync(a => a.Id == respostaAvaliacao.PerguntaAvaliacaoId); return(RedirectToAction("Index", "Avaliacoes", new { id = perguntaAvaliacao.AvaliacaoId, perguntaId = respostaAvaliacao.PerguntaAvaliacaoId })); } ViewData["PerguntaAvaliacaoId"] = new SelectList(_context.PerguntasAvaliacao, "Id", "Id", respostaAvaliacao.PerguntaAvaliacaoId); return(View(respostaAvaliacao)); }
// GET: PerguntasAvaliacao public async Task <IActionResult> Index(int?id) { var viewModel = new PerguntasAvaliacaoVM(); viewModel.PerguntasAvaliacao = await _dbContext.PerguntasAvaliacao .Include(p => p.Respostas) .AsNoTracking() .OrderBy(p => p.Descricao) .ToListAsync(); if (id != null) { var perguntaId = id.Value; PerguntaAvaliacao perguntaAvaliacao = viewModel.PerguntasAvaliacao.Single(pa => pa.Id == perguntaId); viewModel.RespostasAvaliacao = perguntaAvaliacao.Respostas.Where(ra => ra.PerguntaAvaliacaoId == perguntaId).ToList(); viewModel.SelectedId = perguntaId; viewModel.AvaliacaoId = perguntaAvaliacao.AvaliacaoId; } return(View(viewModel)); }