public IEnumerable <RespuestaEvaluarWrapper> GetRespuestasByPregunta(int idPregunta, EnumEstadoPreguntaFiltro estadoPreguntas) { var respuestasAll = new List <RespuestaEvaluarWrapper>(); List <Pregunta> preguntas = this.GetPreguntasByEstado(EnumEstadoPreguntaFiltro.Todas, idPregunta).ToList(); if (preguntas.Any()) { Pregunta pregunta = preguntas.FirstOrDefault(); if (pregunta != null) { if (estadoPreguntas != EnumEstadoPreguntaFiltro.Todas) { pregunta.RespuestaAlumno = estadoPreguntas == EnumEstadoPreguntaFiltro.SinCorregir ? pregunta.RespuestaAlumno.Where(x => x.IdResultadoEvaluacion == null).ToList() : pregunta.RespuestaAlumno.Where(x => x.IdResultadoEvaluacion == (int)estadoPreguntas).ToList(); } foreach (RespuestaAlumno respuestaAlumno in pregunta.RespuestaAlumno) { RespuestaEvaluarWrapper respuestaEvaluarWrapper = this.GetRespuestaWrapperByRespuesta(respuestaAlumno); respuestasAll.Add(respuestaEvaluarWrapper); } } } return(respuestasAll.OrderBy(x => x.FechaHoraRespuesta)); }
public RespuestaEvaluarWrapper GetRespuestaWrapperByRespuesta(RespuestaAlumno respuesta) { var respuestaWrapper = new RespuestaEvaluarWrapper { IdRespuestaAlumno = respuesta.IdRespuestaAlumno, Alumno = string.Format("{0} {1}", respuesta.Alumno.Nombre, respuesta.Alumno.Apellido), FechaHoraRespuesta = respuesta.FechaHoraRespuesta, Respuesta = respuesta.Respuesta, MejorRespuesta = respuesta.MejorRespuesta, EstadoCorreccion = respuesta.IdResultadoEvaluacion != null ? (EnumEstadoPreguntaFiltro)respuesta.IdResultadoEvaluacion : (EnumEstadoPreguntaFiltro?)null }; return(respuestaWrapper); }