コード例 #1
0
        public SeccionConPreguntas ArmarSeccion(string id)
        {
            // Sacar codigo y nombre de la BD
            Seccion secDB = db.Seccion.Find(id);

            if (secDB == null)
            {
                return(null);
            }

            SeccionConPreguntas seccion = new SeccionConPreguntas();

            // Asignar datos de la DB al objeto especial
            seccion.CodigoSeccion = secDB.Codigo;
            seccion.Nombre        = secDB.Nombre;
            seccion.Orden         = 0;

            // Sacar las preguntas y obtener opciones y/o justificaciones
            PreguntasController preguntasController = new PreguntasController(this.db);

            seccion.Preguntas = preguntasController.ArmarPreguntas(seccion);
            preguntasController.ObtenerInformacionDePreguntas(seccion.Preguntas, seccion.CodigoSeccion, null);

            return(seccion);
        }
コード例 #2
0
        public void ObtenerSeccionesConPreguntas(LlenarFormulario formulario, ObjectResult <ObtenerSeccionesDeFormulario_Result> seccionesDeFormulario,
                                                 Respuestas_a_formulario respuestas, bool editar)
        {
            if (formulario != null && seccionesDeFormulario != null)
            {
                foreach (var seccion in seccionesDeFormulario.ToList())
                {
                    List <ObtenerPreguntasDeSeccion_Result> preguntas = db.ObtenerPreguntasDeSeccion(seccion.Codigo).ToList();
                    SeccionConPreguntas nuevaSeccion = new SeccionConPreguntas {
                        CodigoSeccion = seccion.Codigo, Nombre = seccion.Nombre, Preguntas = new List <PreguntaConNumeroSeccion>(), Orden = seccion.Orden
                    };
                    PreguntasController preguntasController = new PreguntasController(this.db);
                    foreach (var pregunta in preguntas)
                    {
                        nuevaSeccion.Preguntas.Add(new PreguntaConNumeroSeccion
                        {
                            Pregunta = new Pregunta {
                                Codigo = pregunta.Codigo, Enunciado = pregunta.Enunciado, Tipo = pregunta.Tipo
                            },
                            OrdenSeccion  = nuevaSeccion.Orden,
                            CodigoSeccion = nuevaSeccion.CodigoSeccion,
                            OrdenPregunta = pregunta.Orden,
                            Edit          = editar
                        });

                        preguntasController.ObtenerInformacionDePreguntas(nuevaSeccion.Preguntas, nuevaSeccion.CodigoSeccion, respuestas);
                    }
                    formulario.Secciones.Add(nuevaSeccion);
                }
            }
        }