public void AdicionarPergunta(int idQuestionario, DtoPerguntaQuestionario pergunta) { var questionario = (from q in Banco.Questionario where q.QuestionarioID == idQuestionario select q).FirstOrDefault(); if (questionario == null) { throw new Exception("Questionário não encontrado"); } var novaPergunta = new PerguntaQuestionario() { Descricao = pergunta.Descricao, MultiplaEscolha = pergunta.MultiplaEscolha, Questionario = questionario, }; foreach (var resposta in pergunta.RespostasPossiveis) { var novaResposta = new RespostaPossivel() { DescricaoRespostaPossivel = resposta.DescricaoRespostaPossivel, PerguntaQuestionario = novaPergunta, }; Banco.RespostaPossivel.Add(novaResposta); } Banco.PerguntasQuestionario.Add(novaPergunta); Banco.SaveChanges(); }
public void CopiarPerguntasDeQuestionario(int idQuestionarioOrigem, int idQuestionarioDestino) { var origem = (from q in Banco.Questionario where q.QuestionarioID == idQuestionarioOrigem select q).FirstOrDefault(); if (origem == null) { throw new Exception("Questionário não encontrado"); } var destino = (from q in Banco.Questionario where q.QuestionarioID == idQuestionarioDestino select q).FirstOrDefault(); if (destino == null) { throw new Exception("Questionário não encontrado"); } foreach (var pergunta in origem.PerguntasQuestionario) { var novaPergunta = new PerguntaQuestionario() { Descricao = pergunta.Descricao, MultiplaEscolha = pergunta.MultiplaEscolha, Questionario = destino, }; foreach (var resposta in pergunta.RespostasPossiveis) { var novaResposta = new RespostaPossivel() { DescricaoRespostaPossivel = resposta.DescricaoRespostaPossivel, PerguntaQuestionario = novaPergunta, }; Banco.RespostaPossivel.Add(novaResposta); } Banco.PerguntasQuestionario.Add(novaPergunta); } Banco.SaveChanges(); }